Skip to content

Documentation bug regarding roms directory on macOS #27

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
millerjs2 opened this issue Jul 12, 2023 · 8 comments
Open

Documentation bug regarding roms directory on macOS #27

millerjs2 opened this issue Jul 12, 2023 · 8 comments
Labels
bug Something isn't working

Comments

@millerjs2
Copy link

Describe the bug
On the "search path" section of the ROMs documentation page, here, it is stated that the roms directory can be located in one of the following locations:

  • roms subdirectory in the VM path
  • roms subdirectory in the same directory as the emulator executable
  • Platform-specific locations

However, in macOS (13.4.1) if the roms directory is in the same location as 86Box.app (e.g. ~/dev/86box/) the "86Box cannot determine the emulated machine's location due to a macOS security feature" error is displayed when trying to launch 86Box. If the roms directory is moved to ~/Application\ Support/net.86box.86Box/ then 86Box.app can be launched successfully.

Confirmed on build 4701.

To Reproduce

  1. Make sure ~/Library/Application\ Support/net.86box.86Box/roms/ does not exist (or move it temporarily)
  2. Place the roms directory in the same location as 86Box.app
  3. Launch 86Box.app

Expected behavior
The documentation states the the roms directory may be located "in the same directory as the emulator executable", yet that does not seem to be a valid configuration. Either the documentation needs to be updated to reflect the requirement that the roms directory be placed in ~/Application\ Support/net.86box.86Box/ or the software needs to correctly check the " roms subdirectory in the same directory as the emulator executable".

Desktop (please complete the following information):

  • OS: macOS 13.4.1 on a 2020 14" MacBook Pro
  • 86Box version: v4.0 build 4711
@millerjs2 millerjs2 added the bug Something isn't working label Jul 12, 2023
@cold-brewed
Copy link
Contributor

I can't seem to reproduce this. Ventura 13.1. Followed the reproduction steps. I also downloaded the latest 86box from CI (4748) to test.

  1. Made sure ~/Library/Application\ Support/net.86box.86Box/roms did not exist
  2. Placed roms directory in the same directory
  3. Launched in various ways
ls -ld 86Box.app roms
drwxr-xr-x   3 myusername  staff   96 Jul 27 11:05 86Box.app
drwxr-xr-x  16 myusername  staff  512 Sep  2  2022 roms

I tried launching by:

  • Double clicking in finder
  • Using open 86Box.app in a terminal
  • Directly calling the binary contained in the bundle (./86Box.app/Contents/MacOS/86Box) in a terminal

In every case it correctly found the roms directory in the current folder.

What may help: Could you run 86Box directly from a terminal and paste the output here? There's some extra information which may help us track this down. I'm not sure why your scenario is triggering that message.

In a terminal:

cd /path/to/dir
./86Box.app/Contents/MacOS/86Box

and paste the contents here.

Side note: When I moved it to a new location (removable drive) I did receive the 86Box would like to access files on a removable volume message, to which I granted permission. I wonder if for some reason the executable does not have sufficient permissions to read the current directory?

It might be worthwhile to check System Settings -> Privacy -> Files and Folders -> 86Box.

@cold-brewed
Copy link
Contributor

Checking back in here - will you be able to run the commands I noted to help us track the issue down? Otherwise I can't reproduce.

@millerjs2
Copy link
Author

millerjs2 commented Aug 18, 2023

@cold-brewed yes, I'm happy to test more - let me run through it again and make sure it's still happening.

@OBattler OBattler transferred this issue from 86Box/86Box Sep 9, 2023
@unjello
Copy link

unjello commented Jan 10, 2024

Well, that is interesting. So I have just downloaded the latest stable release (4.0.1). If I run it from Finder I get following error, no matter where I move the app:

86Box cannot determine the emulated machine's location due to a macOS security feature. Please move the 86Box app to another folder (not /Applications), or make a copy of it and open that copy instead.

when I do what @cold-brewed suggested, I got:

86Box could not find any usable ROM images. Please [download](https://github.com/86Box/roms/releases/latest) a ROM set and extract it into the "roms" directory.
error

and after downloading the roms, and putting them side-by-side with 86Box.app it worked from the command line, yet if I try to run it from Finder I still get the same error as initially.

@rilysh
Copy link
Contributor

rilysh commented Jul 3, 2024

I'm guessing when you run 86Box using "Finder", 86Box locates to a different current working directory where ROMs directory isn't present. Though I don't really have a mac to test on...

@yochenhsieh
Copy link

I can confirm this on 86Box 4.2.1 for Mac:

  • Start in Finder - Error message
  • Run "open 86Box.app" in terminal - Error message
  • Run "./86Box.app/Contents/MacOS/86Box" in terminal - this works for me.

@Durakill
Copy link

Hi,

Apple M1 Max macOS 15.3.2

Downloaded 86Box4.2.1

Copied to /Users/[me]/Desktop/86Box

Downloaded roms-4.2.1.zip

Created folder roms in /Users/[me]/Desktop/86Box

Copied roms-4.2.1.zip to /Users/[me]/Desktop/86Box/roms

Unzipped roms-4.2.1.zip in /Users/[me]/Desktop/86Box/roms

Error message on starting 86Box -

"86Box could not find any usable ROM images. Please download a ROM set and extract it into the "roms" directory."

Running in terminal gives following output -

"Qt: version 5.15.12, platform "cocoa"
2025-04-12 11:09:53.349 86Box[12368:883757] +[IMKClient subclass]: chose IMKClient_Modern
2025-04-12 11:09:53.349 86Box[12368:883757] +[IMKInputSession subclass]: chose IMKInputSession_Modern"

plus

"86Box could not find any usable ROM images. Please download a ROM set and extract it into the "roms" directory."

I also put the rom pack (zipped and unzipped) in

/Users/[me]/Library/Application\ Support/net.86box.86box/roms/

Have you got any good ideas? Please treat me gently - I’m an octogenarian.

I would be tearing my hair out at this point, if I had much to spare.

Thanks.

@Durakill
Copy link

Dang. Got 86box working. Renamed unzipped roms4.2.1 folder to "roms". Put in same folder as 86Box. Had to right-click and "Open" first time - asked for permission . . .

Now, double click on app, or running from command line in Terminal etc. all seems good.

Maybe I read things wrong. I’m old, you know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

6 participants