## liballeg/allegro5 — v4-2-1…v4-2-2-rc1

_90 commits._

### Features
- **Matthew Leverton added initial support for the Digital Mars C compiler (for the** (7c78a1b)
- **Added support for horizontal wheel mice (so far, only the X11 driver reports any horizontal wheel movement though). Also increased the number of supported mouse buttons from 3 to 5 for the X11 driver.** (003c109)
- **Add missing spaces to a long string split over multiple lines.** (2653992)
- **Added desktop_color_depth and get_desktop_resolution to the Linux fbcon driver. It's not always possible to change the colour depth or resolution of the framebuffer, so being able to get this information is useful. It does add fbcon driver entries to the system vtable, however.** (cf57ce5)
- **Daniel Schlyder added a new function font_has_alpha.** (aa36083)

### Fixes
- **minor fix for C locking code in GDI** (32783bd)
- **Fix a very minor problem: set_palette was called on a full palette but only** (33c1729)
- **Fix a minor memory leak: the double buffer wasn't destroyed.** (a6b7e00)
- **Fix some spelling mistakes.** (4d97038)
- **fix.bat needs the executable property set.** (f133536)
- **Fixed the formatting in the previous patch.** (c6b95ce)
- **Erno Schwetter fixed a long-standing bug in polygon() where the bottom-most pixels would not be drawn.** (08ff09d)
- **Phil Krylov fixed a bug that prevented load_bios_font() from** (f0e04fd)
- **Etienne Vouga fixed bug #1663211 - the reset_controllers MIDI command would not work correctly.** (b3546e8)
- **Erno Schwetter (scherno2000) fixed a bug in polygon() where it would not draw the bottom line of a polygon.** (5c9e1fe)
- **Erno Schwetter fixed a bug where __al_linux_console_fd was begin used in display_switch_lock() without** (3664910)
- **torhu fixed a bug where an array was indexed with -1.** (c084125)
- **Fix prototypes of _al_malloc() and _al_realloc() to take size_t parameters** (503b092)

### Backend
- **Tag 4.2.2 RC1.** (397f0fd)
- **Update example references for 4.2.2.** (c18e9af)
- **Update dllsyms.lst for 4.2.2.** (637ecba)
- **Updates changes and thanks for 4.2.2 RC 1.** (84dbd37)
- **Make mkdata.sh (try to) work properly when the user passes a relative path for** (7e2f5b5)
- **Added lib and obj directories for Digital Mars C compiler.** (02fd7b8)
- **Matthew Leverton removed unnecessary #define UINT_PTR and #define FILENAME_MAX.** (2cefe34)
- **Convert to Unix text file format (I didn't notice this before).** (d79b771)
- **From Matthew Leverton:** (3fe2950)
- **Don't check for unistd.h.  It should be on all Unix platforms and we never** (e506c57)
- **Clean up most of the autoconf namespace pollution.  Instead of** (2cf1c97)
- **waiting (aka: Tilman Kranz <tilde@linuxfoo.de>, website: tk-sls.de) fixed compiling with dmalloc and GNU extensions enabled.** (c35e5f7)
- **Fixed two problems pointed out by spellcaster on allegro.cc:** (40dcff8)
- **Fixed the generation of allegro-config under Mac OS X.** (967615b)
- **Michael Jensen fixed a mistake in the documentation for is_compatible_font.** (deec298)
- **Fixed wrong variable in example code for load_font().** (1d419dd)
- **Fixed a typo in the last commit.** (c6e5e3e)
- **Trent Gamblin made the fullscreen DirectX driver save and restore the palette** (f9df429)
- **Added missing documentation for pack_ungetc.** (54de6ca)
- **Placed demo.dat into svn, as for some reason I never can find any demo.dat when I want to try the demo.** (7e337ba)
- **s/draw_h_sprite/draw_sprite_h_flip** (5790853)
- **Ryan Patterson clarified the documentation of stop_sample().** (cb6289e)
- **Trent Gamblin fixed the C version of stretch_blit so it now draws correctly. He also made it about 20% faster along the way, in my tests.** (168f7bd)
- **orz, Matthew Leverton and myself made the ALLEGRO_USE_C=1 option to work under** (e13ae78)
- **Anthony Cassidy fixed a typo.** (2b23634)
- **Applied ANSI C restrictions.** (9298575)
- **Anthony 'Timorg' Cassidy made d_menu_proc fill up its assigned area with the** (e3e105e)
- **Fixed double SWITCH_IN event callback when de-minimizing the app.** (fe60b78)
- **undid last commit, apparently instead of drawing not enough it draws too much now in some cases** (3ce02d0)
- **Erno Schwetter fixed an unbalanced __al_linux_console_graphics() call.** (79ad086)
- **Ryan Patterson fixed a crash in free_config_entries.** (4029547)
- **Deleted lines that defined _LPCWAVEFORMATEX_DEFINED if not defined.** (5367e96)
- **Jon Rafkind and Karthik Kumar fixed a problem where allegro-config would respect neither --libdir nor --includedir.** (9149434)
- **Updated email address of Lorenzo Petrone.** (2d6e288)
- **Fixed C99-ism.** (8083b93)
- **fixed harmless warnings** (68d84e2)
- **Cleaned up and optimised asmdef.sh (now it's about two times faster).** (798750f)
- **Change the way we escape a backslash inside backticks in asmdef.sh.** (0039aab)
- **typo** (b5e627a)
- **missing )** (8343747)
- **Marcio Afonso Arimura Fialho reported some remaining usages of the deprecated** (76f267b)
- **Fixed the example for draw_lit_rle_sprite() in docs.** (7d03504)
- **Fixed the example for draw_lit_sprite() in docs.** (bc37b57)
- **Peter Wang made alsa_rawmidi_output() not modify allegro_error when** (62cc69a)
- **Peter Wang made the set_mouse_speed() setting only stick while the cursor is in** (fa62bd4)
- **Trent Gamblin implemented set_mouse_speed under X11.** (3d103f3)
- **Updated docs to mention SVN instead of CVS.** (2381483)
- **Matthew Leverton fixed building of universal binaries on MacOS X. For now, this requires OS X 10.4 on both PPC and Intel. Supporting older versions of MacOS X on the PPC with a universal binary seems to require compiling the lib twice and then combining the two, which is hard to do with the current build system.** (b2a0b80)
- **Reverting my last change, and making FBCON driver initialization fail if unsupported color depth was set.** (e4e04b3)
- **Remove executable bit on sgial.c.** (5eed406)
- **Fixed a crash in FBCON GFX driver if color depth unsupported by the framebuffer was selected.** (2602870)
- **Added missing get_mixer_volume vtable entry to sgial DIGI driver.** (6d9ba8c)
- **Michal Molhanec and Milan Mimica simplified MSVC build process:** (de9e8c3)
- **Michal Molhanec fixed two warnings** (dcd04bb)
- **Added executable flag to some files that need it.** (0184684)
- **Andrei Ellman made MSVC makefile compatible with cygwin port of make-3.81 (and newer?).** (5e4d3c1)
- **Andrei Ellman made a change to speed up makefile parsing.** (88ee7a5)
- **Andrei Ellman replaced a couple of realloc() and free() calls by** (dac565b)
- **Fixed a const-correctness warning.** (869c552)
- **Andrei Ellman made it easier to identify the app producing the error-message when doing a build.** (4a0d465)
- **Daniel Schlyder documented that register_assert_handler() and** (9948e8d)
- **Daniel Schlyder added a function is_trans_font.** (71b57f6)
- **Daniel Schlyder made load_txt_font() additinally search for files referenced in** (857458d)
- **Daniel Schlyder prevented the Windows port from registering its default trace** (ab82426)
- **Formatting fixes only.** (5058f8e)
- **Wrap long lines.** (4de4266)
- **bhagabhi fixed a typo in the docs** (2c7750e)
- **Andrei Ellman modified the 6-to-8 bit value scaling tables to be more evenly** (5b37bf4)
- **Formatting changes only.** (d8953d8)
- **Formatting.** (e27aa3e)
- **Minor updates to release process.** (c998224)
- **Bumped version to 4.2.2 (SVN)** (0742ed7)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/liballeg/allegro5?utm_source=github-action)._