This CVS snapshot extends portability to DOS 16-bit, MacOS (in progress), and AmigaOS (in progress). The sprite blitting algorithm has been changed to work with hidden screens. High resolution, mouse support, and Amiga-style sound emulation have been added. The AGI commands set.pri.base, echo.line, and adj.ego.move.to.xy have been implemented. The palette has been adjusted to use IIgs/Amiga-ish colors.
Implementations of the AGI commands clear.rect, get.room.v and add.to.pic have been fixed. Cel and loop setting tests have been changed to prevent crashes and display errors. The sound routines now use native-endian 16-bit words. GCC 3.0 compilation issues have been addressed.
The QNX Photon and SVGAlib graphics drivers and
the ALSA sound driver have been updated. Bugs
causing interpreter crashes on quit, restart and
menu operations have been addressed. Better key
handling has been implemented. Errors in the
implementation of several AGI commands have been
fixed.
The interpreter core has been redesigned. This
release adds a new sprite manager, sprite
repositioning and blocking, proper handling of
previously unused view table entries and flags,
preliminary savegame support, and PC EGA video
controller 320x200 aspect ratio correction. The
graphics layer has been redesigned to work with
new sprites, and all ancillary buffers have been
replaced by a single AGI screen buffer containing
both priority and visible data. implemented.
Several AGI commands have been fixed, graphics
drivers have been optimized, and there are many
win32 fixes.
A new ID mechanism with an external ID file, new -C/--crc options for dumping the CRC/ID of a game, merging of v2/v3 ID lists, a fix for the v2 driver to return the proper error code in detect_game, merging in of an experimental DJGPP/Allegro driver and SDL + command line patches, changes to some length limits in text priting to correct message boxes, and some experimental Inventory code.