Changelog:
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
Atualizações:
Novos Recursos
Implementada a funcionalidade completa do painel Expansions GUI.
Implementado suporte SLIRP.
Implementada a funcionalidade SERIAL_ENET.
Adicionada opção de serial compartilhada.
Adicionadas opções internas de serial.
Adicionado suporte PPC do WinUAE (precisa do plugin QEmu).
Adicionado suporte PCEM do WinUAE, com correções para ARM/ARM64.
Adicionado suporte PCI do WinUAE.
Adicionado suporte MAME (a2410 e TM34010) do WinUAE.
Adicionado suporte QEMU (vários cartões gráficos, cartões de rede, SCSI, etc.) do WinUAE.
Adicionada emulação DSP (desativada por enquanto).
Adicionado suporte SANA2 (ainda não visível na GUI).
Mescladas as últimas atualizações do WinUAE 5.3.1.
A estrutura de diretórios foi alterada para ser mais padronizada. Pastas configuráveis pelo usuário agora são criadas na inicialização na pasta HOME do usuário. Bibliotecas compartilhadas serão colocadas no local esperado com base no sistema utilizado. A estrutura de diretórios antiga foi limpa, já que diretórios vazios não são mais necessários.
Implementado temas de GUI. Agora é possível personalizar as cores da interface gráfica e salvar em arquivos de tema separados.
Não abrir GUI ao carregar diretamente um arquivo de estado (corrige #1525).
Corrigido painel de inicialização rápida que não permitia habilitar DF1 (corrige #1526).
JIT 32-bit, não usar LDRD/STRD, já que o acesso à memória não é garantido como alinhado.
Resetar opção MMU ao alternar entre modelos Quickstart (corrige #1535).
Corrigido falha na inicialização no MacOS Intel (corrige #1520).
Corrigidos plugins inclusos no MacOS (#1540) (#1541).
O nome do arquivo WHDLoad não era retido nas configurações (corrige #1539) (#1546).
Corrigido compilação no macOS Monterey (#1548).
Atualizar todos os painéis após editar o Quickstart (#1549).
Atualizar todos os painéis ao inserir disquete também (#1549).
Mudança para BGRA32 em modos de 32 bits (corrige #1519).
Emulação do MCU de teclado.
Entrada de configuração Bordercolor.
Caminho de estado de arquivo por configuração.
Implementação de atalhos na função de seleção de disco (corrige #1559).
Adicionada opção de Automontagem de CD/DVD CDFS na GUI.
Correções de Bugs
Corrigidos vários problemas no diálogo SelectFile (corrige #1417).
Listboxes não redimensionavam corretamente na largura (corrige #1415).
Corrigida capitalização no painel de RAM (corrige #1422).
Corrigida escala do controle deslizante de velocidade do CPU, quando a opção Fastest Possible estava selecionada.
Corrigida navegação no painel de Som.
Atualizar painel RTG quando modificadas as alterações do CPU.
Edição de entradas no painel HD estava quebrada.
Corrigido mapeamento de memória do TekMagic.
Roms personalizadas não apareciam na GUI após carregar uma configuração (corrige #1450).
Ao fazer um Rescan ROMs, restaurar o ROM originalmente selecionado depois (corrige #1451).
Não associar todos os arquivos .lha com o Amiberry (corrige #1461).
Alt-Tab não liberava as teclas corretamente.
Corrigido tipo de registrador não permitido nas versões mais recentes do C++.
Correção na altura da tela intercalada.
O tamanho da fonte do tema não era ajustado corretamente a partir da caixa de texto.
Corrigido erro de segmentação ao retornar à GUI.
Ao girar a tela, a entrada do mouse também deveria ser girada.
Corrigido movimento do mouse em diferentes ângulos de rotação.
Corrigido variável de caminho não inicializada (#1502 por DidierMalenfant).
A opção de arquivo Expansion Rom nem sempre era salva (#1501).
A atualização do painel Expansions estava com falhas (corrige #1501).
Corrigido implementação da porta serial, que estava quebrada em algumas versões. Testado com cabos null-modem entre instâncias do Amiberry e entre Amiberry e Amigas reais.
Corrigida implementação do AHI, que estava quebrada e poderia até causar falhas em alguns sistemas.
Corrigido modo NTSC que não podia ser selecionado no painel de Display (corrige #1551).
O nome do arquivo de estado estava sendo tratado de forma incorreta ao iniciar a partir da linha de comando (corrige #1553).
Não sobrescrever o campo de texto a cada atualização (#1554).
Corrigido algumas conexões de socket que não eram completadas corretamente (#1359).
O getlocaltime estava retornando hora UTC, ao invés da hora local.
O nome da configuração foi alterado ao inserir mídia (corrige #1564).
Corrigido erro de retornos inesperados ao reiniciar a GUI (corrige #1576).
Os botões de Save State às vezes não apareciam completamente (corrige #1577).
A descrição não era configurada corretamente ao usar o WHDLoad (corrige #1580).
O botão de salvar para o slot não mostrava os diálogos de aviso (corrige #1581).
Corrigida a entrada de configuração de cor de borda.
Melhorias
Sempre mostrar a barra de rolagem horizontal no diálogo SelectFile (corrige #1415).
Atualização do guisan para a versão mais recente, com várias correções e melhorias.
Adicionada validação para as extensões de ROM .bin, .cdtv e .cd32.
Adicionado suporte para XDG_CONFIG_HOME (corrige #1425).
Tratamento mais gracioso de falhas no iconv.
Remover a verificação onde a última faixa era maior que o total de faixas. Agora é permitido pela especificação SCSI.
Adicionado QuikPak e 6500/1 Keyboard MCU ROM (serão usados em versões futuras).
Atualizados arquivos de ROM AROS para a versão mais recente.
Verificação de plugins em mais lugares.
Renomeado o botão “Update XML” para indicar melhor sua função.
Ao atualizar os arquivos WHDBooter, incluir JST e AmiQuit.
Se falhar ao excluir uma configuração, mostrar uma mensagem.
Digitalizar ROMs Arcadia durante uma operação de rescan.
Melhorado ícone, adicionado versão svg (#1463 por midwan).
Atualizado WHDLoad para a versão mais recente.
Renderizador ciente de Highdpi (#1472 por midwan).
Melhorado mime types (corrige #1474).
Verificação do tipo de campo do modo entrelaçado ao calcular a altura da captura de tela.
Verificar estados salvos no diretório de estados salvos também (corrige #1498).
Aplicar fator de escala na janela de emulação também (corrige #1421).
Usar escala inteira na GUI, se estivermos rodando em um Desktop.
Suporte expandido do DBus com novos eventos: Inserir Floppy, Inserir CD.
Adicionada opção de usar JST em vez de binário WHDLoad.
Suporte para Savestates como parâmetro (corrige #1522).
Aceitar também versões capitalizadas das extensões de ROM.
Adicionado suporte para modo portátil (corrige #1527) (#1528).
Expansão das opções –model com mais modelos (corrige #1529).
Re-alinhamento dos Campos Personalizados do WHDLoad na GUI (#1544 por midwan).
Atualizado o WHDLoad para a versão mais recente.
Adicionada a IDE RIPPLE.
Serial TCP/IP TCP_NODELAY.
Lembrar o tamanho e posição da janela (#1568).
Adicionado botão de excluir estados salvos.
Adicionadas mais funcionalidades no painel de Savestates.
Preencher mais campos no diálogo de Hardfile (corrige #1578).
Lembrar os tamanhos das janelas também para telas P96 (#1568).
Atualizado o banco de dados WHDLoad para a versão mais recente.
Atualizado o banco de dados de controladores de jogo para a versão mais recente.
Melhorias de Desempenho
Evitar usar std::endl em streams.
Melhorias menores no desenho.
Sistema de Construção
Agora usando CMake para compilar para todas as plataformas, o Makefile foi removido.
Agora podemos gerar pacotes instaláveis: DEB, RPM e DMG foram adicionados.
Adicionados builds para versões do Ubuntu.
Adicionadas builds RPM para Fedora.
Adicionado libenet-dev para builds do Ubuntu.
Pacotes para MacOS agora são assinados corretamente com um certificado. Não é mais necessário contornar a segurança para rodar o app.
Adicionados flags recomendadas para compilação de depuração no macOS.
Corrigido ano de copyright no pacote do macOS.
Refatorações
Remover diretórios que são gerados na inicialização.
Definir todas as janelas internas da GUI como não móveis.
Mover a pasta “abr” para dentro de “data”. (#1464 por midwan).
Atualização do Flatpak (#1465 por midwan).
Definir semprerelease como true ao liberar Alt-Tab.
Alterar os locais padrão para diretórios.
Alterar valor padrão do botão de desligamento para desabilitado.
Melhorar detecção de nomes de portas seriais internas.
Renomear portas seriais internas.
Melhorias no uaeserial.
Definir largura da barra de rolagem como 14 pixels (#1508).
Remover chamada inútil AHI clearqueueaudio.
Melhorias menores em sound.cpp.
Mudanças na Documentação
Atualizada a Readme com novos padrões sobre como obter e compilar o Amiberry.
Atualizadas as seções do Wiki de acordo.
Adicionada descrição sobre áudio auto-switch (corrige #1537).
Atualizada página do man com as últimas mudanças (corrige #1530).
Atualizado texto de ajuda no painel HelpPanelFloppy sobre o botão de salvar.
Atualizado texto de ajuda no painel Savestates GUI (corrige #1557).
Adicionado texto de ajuda para a opção CDFS automount (corrige #1582).
Melhorado texto de ajuda no painel Savestates.
Mais atualizações de texto de ajuda.
Melhorado texto de ajuda no painel WHDLoad (#fixes 1583).
Tarefas
Guisan: harmonizar todos os arquivos para usar espaços e os mesmos finais de linha.
Remover links do opencollective.
Escrever opções de configuração apenas se estiverem habilitadas.
Adicionar ifdefs para DEBUGGER, limpar código.
Comentários