---
layout: post
title: "86Box v3.4"
description: "Release for April 2022, now with macOS support."
authors: ["richardg867"]
image: "/assets/images/v3.4/hero.png"
---

{% include imageheading.html url="/assets/images/v3.4/hero.png" separator=" " %}

This is the April 2022 update to 86Box, bringing **macOS support**, bugfixes and other behind-the-scenes work. As always, you can [download 86Box v3.4 from GitHub](https://github.com/86Box/86Box/releases/tag/v3.4.1).

<hr />

## Now with macOS

Continuing on the cross-platform development effort started during [v3.0]({% post_url 2021-12-01-86box-v3-0 %}#linux) and first released for Linux on [v3.2]({% post_url 2022-02-16-86box-v3-2 %}#now-with-linux), we now provide **Intel macOS** builds of 86Box. These should work on macOS High Sierra 10.13 and newer, natively on Intel Macs and through Rosetta 2 on Apple Silicon Macs. [dob205](https://github.com/dob205) was our main macOS tester, while [**jgilje**](https://github.com/jgilje), [**Cacodemon345**](https://github.com/Cacodemon345) and other contributors did the OS integration work.

As with Linux, there is currently no 86Box manager for macOS, but you can manage emulated machines by **making copies** of `86Box.app` on different places (just dragging it to `/Applications` is currently not recommended); the `roms/` directory (containing the ROM set) must be placed next to the .app ([example](/assets/images/v3.4/roms.png)\), and the emulated machine's files will be saved next to the .app as well.

### But where's Apple Silicon?

We haven't forgotten about our promise for Apple Silicon support. Tests done by the community show that the M1 and M1 Pro are among **the best CPUs** you can currently get for running 86Box natively, and Rosetta 2 can leave quite a bit of performance on the table.

As it turns out, a cross-platform project like 86Box is **nearly impossible** to compile for Apple Silicon Macs without **actual hardware**. While the aforementioned community testers managed to compile and run 86Box for Apple Silicon on their own M1 machines, we cannot replicate that in a way we can distribute through [Jenkins](https://ci.86box.net/job/86Box/) or regular releases, since we only have access to Intel hardware; while tools like [Homebrew](https://brew.sh) and [MacPorts](https://www.macports.org) can compile for Intel on Apple Silicon systems, they can't do the opposite.

Apple hardware is expensive. While their chips provide good performance for the money, the machines are still costly upfront, and **we can't afford them**. Renting a Mac Mini from a hosting company also costs more than our entire hosting bill, and while there is one such company out there providing free M1 hardware to open source projects, their offering is **not available to us**. If you want native 86Box on Apple Silicon to become a reality, consider [making a donation](https://paypal.me/86Box) or [joining our Patreon](https://www.patreon.com/86box); contributing will help us get our hands on that hardware in one way or another.

<hr />

## Changelog for v3.4

### Emulator

* Added provisions for **system-wide ROM directories** on all platforms (to be documented soon)
* Added **32-bit x86** architecture to Linux builds
* Fixed crash on startup caused by **missing disk image files**
* Fixed **keyboard input** when the mouse is not captured
* Fixed mouse input with **Remote Desktop** on Windows
* Fixed occasional crash with a `do_seg_load()` message
* Fixed incorrect executable path displayed on the **stdout log** on Linux
* Updated translation: **Portuguese (Portugal)**

### User interface

* Fixed **emulated screen size** being off by one pixel on some Linux systems
* Fixed creation of **differencing VHD** disk images
* Fixed **Settings button** incorrectly enabled on network cards with no settings

### Machines

* Temporarily removed the **Compaq Deskpro 386** while we figure out what went wrong with it on v3.3; the functionally-equivalent **Compaq Portable III (386)** can be used instead

### Hardware

* **Sound**
  * Fixed playback start delay issues with certain drivers on the **C-Media CMI8738**
  * Changed **FluidSynth** to fall back to the system soundfont if none is set on Linux
* **Network**
  * Slightly improved **PCap** performance on Linux

### Known issues

* **Mouse input** does not work properly on some Linux hosts, especially when dragging with a button held down. This issue dates back to v3.2, but it can now be worked around by starting 86Box from a terminal with the `EMU86BOX_MOUSE` environment variable to `evdev` (and making sure your user is part of the `input` group or otherwise has the right permissions to access `/dev/input/event*`), for example: `EMU86BOX_MOUSE=evdev ./86Box-Linux-....AppImage`
* The host mouse cursor may **escape the 86Box window** when using the aforementioned workaround
* While mouse movement through **Remote Desktop** on Windows hosts was fixed, it still isn't perfect

<hr />

## <a name="v3-4-1" />Changelog for v3.4.1

### Emulator

* Fixed **mouse buttons** not working

### User interface

* Fixed **middle mouse button** not releasing mouse capture

### Known issues

* Same as v3.4 above
