Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Emulateur HATARI 2.4.0

35 views
Skip to first unread message

pascal WIJSBROEK

unread,
Jul 13, 2022, 6:49:36 AM7/13/22
to
Le lien qui va bien :
http://hatari.tuxfamily.org/download.html

Et quelques nouveautés et corrections :
Major highlights of this new version:
– Major rewrite of the internal delays/timers, speed up emulation by ~10% on average
– Various CPU improvements (FPU, IPL timing)
– Faster CPU emulation for 68000 in cycle exact mode (speed up emulation by ~7%)
– More accurate MFP emulation, combined with the new internal timers
– Improved VBLANK position in 50 and 60 Hz mode
– Improved cycle accurate YM2149 emulation, supporting new effects (syncsquare in maxYMiser v1.53)
– Better value for MFP GPIP bit 7 (STE DMA sound and Falcon sound)
– For SCSI, improve « Mode Sense » and « Report Luns »
– For IKDB, better emulation of commands $A and $B
– Better MIDI using PortMidi (Linux/Windows/macOS)
– Better RS232 support for BSD/macOS
– Some fixes for Gemdos HD mode
– Many debugger improvements
– Hatari now defaults to the SMALL_MEM build option, using less RAM during emulation


Following features are deprecated and will be removed in a future release:
– SDL 2.x « bUseSdlRenderer » config and « GPU scaling » GUI options (after HW support for SDL2 is available widely enough)
– The « external » disassembler (i.e. use « –disasm uae » instead)
– Hatari XBios(255) API enabled with the « –bios-intercept » option (i.e. use « –natfeats » & « –cmd-fifo » options and « hconsole » instead)
– The old ~/.hatari configuration file location (use ~/.config/hatari instead)
– The rendering functions for 16 bits-per-pixel host screens (almost all recent hardware should have 32 bpp nowadays)


Removed features (that were marked as deprecated in earlier releases):
– Support for the SDL 1.2 library (i.e. SDL 2.x should be used instead)
– Support for building Hatari for Windows CE has been removed, too, since this was relying on version 1.2 of the SDL library.
– The old UAE CPU core (i.e. the new WinUAE CPU core is now always used)
– Python v2 support in Python scripts (Python 2 was end of life in 2020)


Emulation improvements:
– Internal timers:
*Rewrite the internal timers used to emulate delays/events/mfp timers (gain ~10% on average, up to 60% in very specific cases)
– CPU:
*Improve FPU emulation (exceptions, unimplemeted instructions, fsincos)
*Improve FPU emulation in softfloat mode
*Improve IPL timing update in various opcodes
*Faster emulation of 68000 in cycle exact mode (gain ~7%)
– MFP:
*Use the new internal timers for MFP timers
*Improve accuracy when reading MFP’s Timer Data Register
*More accurate emulation by processing all internal timers first before reading/writing any MFP register (was previously delayed after processing the current CPU instruction, which was too late in some cases)
– Video:
– Fix position for detecting when VBLANK should be disabled in 50 Hz and 60 Hz
– DSP:
*Improved interrupts handling and SSI (from Previous NeXT emulator)
– Sound:
*Improve accuracy of YM2149’s sample generation by using the main CPU clock as a reference for all timings (syncsquare effect as used in recent maxYMiser v1.53)
*Use specific memory functions when doing DMA for STE and Falcon sound (don’t generate bus error when pointed memory is not present)
*Improve value of MFP GPIP bit 7 for DMA sound in the case of STE/TT
(video mono XOR dma sound xsint)
*Use 2 different signals SOUNDINT and SNDINT for Falcon (connected to MFP GPIP7 and MFP Timer A input)
– FDC:
*Stall the CPU during 32 cycles when DMA FIFO is filled/transferred
– SCSI:
*Improve MODE SENSE, add REPORT LUNS support
– IKBD:
*support deltax/deltay in command $A (set mouse keycode mode) and threshold x/y in command $B (set mouse threshold)


Emulator improvements:
– TOS support:
*Support 1024k EmuTOS images also on TT & Falcon
*Add country code option to select EmuTOS language, keyboard layout and screen refresh rate on Mega/ST/STe machines (ones lacking NVRAM)
– MIDI support:
*Fix: PortMidi rejects Hatari MIDI events
*Fix: MIDI IRQ needs to be re-enabled on MIDI device change even when there’s no reset
*Support for matching PortMidi device name by prefix when there’s no exact full match
– RS232:
*The RS232 receiver code has been rewritten to use polling instead of using a thread. This should avoid deadlocks on BSD/macOS systems when shutting down or reconfiguring the RS232 settings.
– TT/Falcon:
*Increase max TT-RAM amount to 1024 MiB
*Separate config + CLI options to override NVRAM language and keyboard layout settings
*NVRAM language default is taken from the LANG env variable
– Falcon:
*Fix: restore zoom mode correctly when loading snapshots
*Correct also smaller specified memory amounts to valid ones
*Microphone emulation now uses SDL2 instead of PortAudio
– MegaSTE/TT:
*Add VME/SCU registers « –vme » access option (Linux needs « none » option and TOS v2 / v3 need « dummy » one until Hatari implements real VME/SCU register emulation)
– VDI mode:
*Relax VDI mode width alignment from 128/planes to 16/planes, and height alignment from 16 to 8 pixels
– SDL GUI:
*Fix: ignore unrecognized events in file selector (buttons could be incorrectly shown as selected)
*Fix: avoid key release event from SDL GUI closing leaking to emulation
*Do VDI mode size changes in (faster) 16 pix increments, and prevent user seeing invalid VDI mode sizes
*Fine-tune CPU dialog texts and keyboard shortcuts
– GEMDOS HD:
*Fix: clear GEMDOS Fread / Fwrite errors
*Fix: Allow GEMDOS tasks to use other tasks’ file handles
– Command line:
*Support « off » as alias for « none » when disabling DSP, FPU, Joysticks and VME, for consistency with HW on/off options
– NatFeats:
*Fix: freeze with NF_STDERR when string is empty or unterminated
– Debugger:
*Fix: profile header so that profile data post-processor knows how to parse built-in WinAUE CPU core (« uae ») disassembly output, not just « ext » disassembler output
*Repeat CPU & DSP « step » and « next » commands on Enter
*Output PC location in CPU & DSP disassembly
*More readable « variables » command output
*Add « PConSymbol » variable for breaking on symbol addresses
*Add « mmu » and « vme » options for « info » command
*Add « scc » and « vme » (VME/SCU reg access) tracing support
*Setting trace to « none » disables also xconout console output enabled by « os_base » trace option
* »next subreturn » will run until current function returns, even if function calls other functions before that
*Symbol loadind code is now shared between debugger « symbols » command & « gst2ascii » tool, and it can now read also long symbol names from Pure-C debug information
*Auto-detection for whether section offsets should be used when loading symbol information
*MIDI trace options are split to « midi » (device & MIDI events) and « midi_raw » (IRQ and register read/write access). Trace logging added also for MIDI byte writes, not just reads
*Trace options are listed in alphabetical order
– Windows:
*Next/prev drive change buttons added to SDL GUI file select dialog


Build/configure:
– SMALL_MEM option is enabled by default


Tools:
– Add (SDL2 specific) « listkeys » key mapping helper back
– TOS boot tester: support 1024k EmuTOS images, misc fixes


Documentation:
– Compatibility updates, especially for 060 programs that need FPSP060.PRG for missing instructions emulation


Fixed demos:
– Hackabonds Demo (wrong vblank detection)
– We Were @ HD version under GEMDOS HD (file handle access)


Fixed programs:
– maxYMiser FM v1.53 by gwEn (support for syncsquare effect)


Fixed games:
– Chambers of Shaolin : DMA sound was wrong in STE mode with 1 MB RAM (mfp gpip bit 7)
– Super Hang On : fix flickering raster colors (bclr #0,$fffffa0f sometimes happened at the same time timer C expired)


– Misc

Francois LE COAT

unread,
Jul 13, 2022, 11:00:06 AM7/13/22
to
Salut,

pascal écrit :
J'ai fait une vidéo pour la version Mac de Hatari 2.4 ...

<https://www.youtube.com/watch?v=phJkwrlB7kY>

En fait j'ai utilisé M_Player 4.28 avec la vidéo de Guillaume :

<https://gtello.pagesperso-orange.fr/temp/ATARIK.MOV>

qui correspond au cinquantenaire de ATARI. C'est un clip très à jour !
Il y a de l'image et du son, sur une config Falcon030+882 et TOS 4.04.
Ça permet de tester tout ce qui est paru dans la période très récente.

--
François LE COAT
Auteur de Eurêka 2.12 (Grapheur 2D, Modeleur 3D)
http://eureka.atari.org/

Francois LE COAT

unread,
Jul 13, 2022, 11:45:10 AM7/13/22
to
Salut,

pascal écrit :
>> Le lien qui va bien :
>> http://hatari.tuxfamily.org/download.html
>
> J'ai fait une vidéo pour la version Mac de Hatari 2.4 ...
>
> <https://www.youtube.com/watch?v=phJkwrlB7kY>
>
> En fait j'ai utilisé M_Player 4.28 avec la vidéo de Guillaume :
>
> <https://gtello.pagesperso-orange.fr/temp/ATARIK.MOV>
>
> qui correspond au cinquantenaire de ATARI. C'est un clip très à jour !
> Il y a de l'image et du son, sur une config Falcon030+882 et TOS 4.04.
> Ça permet de tester tout ce qui est paru dans la période très récente.

J'ai réalisé la même démo avec le miniPack ARAnyM ...

<https://www.youtube.com/watch?v=zLZULbyknN0>

C'est bien que M_Player s'intègre progressivement à freeMiNT et
à ARAnyM. Sachant que la grande majorité des softs ne tournent pas =)

OL

unread,
Jul 13, 2022, 4:31:36 PM7/13/22
to
C'est vraiment un très utile émulateur pour mon utilisation, pour avoir
fait des benchs que j'ai fait il y a bien 20 ans sur un STf et les
comparer avec une config STe 8Mhz c'est assez extraordinaire de trouver
exactement la même performance, le cycle exact au moins pour un 68000
c'est fantastique. Sur un Falcon je ne sais pas

Olivier

Francois LE COAT

unread,
Jul 14, 2022, 1:09:18 PM7/14/22
to
Salut,

OL écrit :
> C'est vraiment un très utile émulateur pour mon utilisation, pour avoir
> fait des benchs que j'ai fait il y a bien 20 ans sur un STf et les
> comparer avec une config STe 8Mhz c'est assez extraordinaire de trouver
> exactement la même performance, le cycle exact au moins pour un 68000
> c'est fantastique. Sur un Falcon je ne sais pas
>
> Olivier

Bien sur un Falcon030 c'est bien aussi, car l'on peut obtenir une
machine comme la mienne Falcon030+882 avec TOS 4.04 ou EmuTOS.

C'est à dire que la presque totalité des Falcon n'ont pas de FPU,
car ça n'est pas le standard. Mais lorsque j'ai acheté le mien
en 1993, j'ai demandé un 68882. Le DSP 56001 est sous employé sur
Falcon030, mais il existe beaucoup de programmes avec FPU, car
le TT030 en est équipé plus couramment.

Mon logiciel Eurêka 2.12 exploite donc la FPU, et c'est un des
rares programmes conçu pour Falcon030. C'est un aspect que j'ai
beaucoup développé ensuite sur mon Hadès060 à partir de 1996. Les
clones ATARI à partir de 68040 et 68060 ont tous une FPU par défaut.

Je trouve dommage que l'on ne puisse pas trop émuler des clones
ATARI avec Hatari ... Mais enfin, si c'est ce que l'on cherche,
autant utiliser ARAnyM pour la puissance de calcul ATARI. Hatari
est surtout conçu pour émuler les machines de la marque =)
0 new messages