Subject: CVS commit: pkgsrc/emulators/atari800
From: Adam Ciarcinski
Date: 2024-01-10 18:57:15
Message id: 20240110175715.77A0FFA42@cvs.NetBSD.org

Log Message:
atari800: updated to 5.2.0

Version 5.2.0 (2023/12/29)

New features:

possibility of renaming the host device "letter" from previously hardcoded
H: to any letter but C: (cassette), E:, K: and S:
So if you have e.g. a program with hardcoded "D:" (as for diskette) you
can now use it on a host device as well by renaming the host device to D:
either via the Emulation configuration -> Host device settings menu
or using command line option

-Hdevicename <X>

little thing but useful (for me at least): tooltip in the settings
menu that reminds users there are virtual host devices with
automatic ATASCII<->ASCII conversion (mainly end-of-line character).

Extremely useful for all text files including ATARI BASIC source code
that can be stored using LIST "H6:PROGRAM.LST" and read back using
ENTER "H6:PROGRAM.LST" (H6 = H1 with ASCII conversion, etc.).

Version 5.1.0 (2023/12/28) - released at SILK

Thanks to all the contributors (see git log for each commit author)

New features:

New command line options:
-playbacknoexit => don't exit the emulator after playback finishes

-joy-distinct => allows larger number of joysticks by not combining multiple \ 
physical
devices into a single emulated joystick. For example this allows using
keyboard to emulate one or two joysticks, and to use these in conjunction
with physical SDL joysticks / controllers in order to play with more people
than there are SDL joysticks. The same logic gets applied to LPT joysticks,
these come after joysticks from keyboard emulation.

Furthermore, the logic also gets applied to put SDL joysticks after LPT
joystics even when the command line flag isn't set. Since LPT joysticks
take precedence over SDL joysticks on the same emulated device, this takes
a device that was completely ignored before and makes it useful now.

The assignments are fixed at program start-up, after config file and command
line flags have been taken into account. If the UI is used to enable or
disable a keyboard-emulated joystick, this can cause an emulated joystick
to be controlled by multiple physical devices, or by none.

Swap also SDL joysticks on AltL+J

This swaps all physical devices connected to the first two emulated
joysticks: the keyboard keys, the SDL devices, and the LPT devices.

After the swap the real joystick / hat setting in the UI will appear swapped
as well, but the keyboard setting won't.

Show all input events on a single line during recording

This way the recording file alternates between two forms of lines: input
lines which contain all keyboard and joystick events in one line, and output
lines with the screen content digest. By filtering out the former, the
latter can be aggregated nicely, e.g. using a command like this:

zcat ${file:?} | grep -vE '^[0-9A-F]{8} *$' | uniq -c

Consecutive frames of equal input state will be represented as a single row,
with a repeat count giving an idea for how long the state was maintained.

RAM cartridges implementation

Many RAMCART and one SiDiCar cartridges
Support for writeable cartridges
CART monitor command
Make blank cartridge UI option
Reserved CART file ids for additional cartridge types currently unemulated by \ 
Atari800,
added also the description of the types
added XEX reading in monitor (useful for patches)

Added H: device rename; save it in setup file

Changes:

Altirra OS updated to v3.41
Altirra BASIC updated to v1.58
Fix buffer over-read in generate_partial_pmpl_colls
Atari ST/TT/Falcon optimizations
Version 5.0.0 (2022/05/28) - released at Atariada.cz (yay!)

Big thanks to all contributors (see git log for each commit author)

New features:

AVI video recording (Alt+V hotkey) by Rob McMullen
-vcodec command line arg can select video codec
-aname and -vname CL args set patterns for sound and video recording
-horiz-area & -vert-area command line args for controlling the image area
-showstats (and -no-showstats) CL args and related config file param
-compression-level for configuring PNG and ZMBV compression

MP3 audio and other audio codecs for audio recording (Alt+W hotkey)
-acodec can select audio codec

New cartridge types supported:

71: Super Cart 64 KB 5200 cartridge (32K banks)
72: Super Cart 128 KB 5200 cartridge (32K banks)
73: Super Cart 256 KB 5200 cartridge (32K banks)
74: Super Cart 512 KB 5200 cartridge (32K banks)
75: Atarimax 1 MB Flash cartridge (new)
See DOC/cart.txt for details.
support for remapping of all function keys (START, SELECT, OPTION etc)

support for comments in config file

tool for creating cart files from ROM files

support for 64-512K Atari 5200 bank-switchable carts with Bryan's design

support for the alternate variant of MaxFlash 1 MB.

support for single RaspberryPi OS package with HW specific binaries

Changes:

video triple buffering changed to double buffering
fixed using proper getcwd()
gamma values in NTSC filter presets updated
MacOS build enables R: by default
fixed saving of config file
using zlib-provided crc32 if HAVE_LIBZ is defined
Altirra OS updated to v3.28
renamed "Switchable 5200" cartridges to "Super Cart"
fixed segfault when a 5200 Super Cart cartridge is removed
avoided unnecessary memory copying of 5200 Super Carts
fixed issue in opening a cartridge
BUILD instructions and new README for Android
fixed segfault when exiting monitor
fixed BBSB's lift not working
avoided unnecessary memory copying in Bounty Bob cartridges
allow configuring --with-audio=win in non-DirectX targets
allow configuring --with-audio=sdl and --with-video <> sdl
atari_x11.c: don't auto-repeat the 'screenshot' key
build compatible with dashFixed keystrokes for inserting/deleting of line/character
SIO now resets BRKKEY (fixes Arsantica 3 demo)
Fix for issue (BBSB warp doesn't work)
Fixes CTRL and CAPS keys when using SDL12-compat library.
DOC/README.RPI explains clearly support for various RaspberryPis

Files:
RevisionActionfile
1.58modifypkgsrc/emulators/atari800/Makefile
1.6modifypkgsrc/emulators/atari800/PLIST
1.28modifypkgsrc/emulators/atari800/distinfo
1.4modifypkgsrc/emulators/atari800/patches/patch-configure
1.2modifypkgsrc/emulators/atari800/patches/patch-src_rdevice.c