Install/macOS
From MSX Game Library
< Install
Default
For the installation, macOS users need to manually setup their environment before they can run the MSXgl's Build tool. Here is a guide provided by user Syntrax to help you in this process.
Node.js
SDCC
- Install SDCC 4.2.0, or use Brew (brew install sdcc)
Tools
Go in to the MSXgl folder and recompile all the enclosed tools. As sources are included, its mostly running ./build.sh on every folder. At minimum, you require the Xcode Command line tools (xcode-select --install). That will compile for example MSXhex, MSXbin and msxtar.
Build
Then the project/sample's build.sh script will start calling SDCC components or the binaries. macOS will block that for security reasons, so build.sh will fail. You must de-quarantine the freshly built/downloaded binaries:
xattr -r -d com.apple.quarantine ./MSXgl
The full process takes about 10~15 minutes to get it up and running.
Notes:
- MSXhex is used to convert .IHX files generated by SDCC into final binary file (.ROM, .COM or .BIN).
- msxtar (not part of MSXtk) is used to generate .DSK file for MSX-DOS or BASIC binary target.
- Other tools from MSXtk are not part of the build process.
Using Docker
This is a quick list of the item of user Sergarbes guide on macOS and Docker.
MSXgl (Ventura, Sonoma and above)
- Activate the display of hidden files
- Enable Privacy & Security
- Install Homebrew (The Missing Package Manager for macOS or Linux)
- Install Git
- Install Docker
- Run a ARM based Debian instance in Docker
- Install node.js in the Docker container
- Install sdcc in the Docker container
- Create a user with the same name of your Mac user in the Debian Docker Container for the ease of the permission issues
- Download copy and unzip MSXgl directory to you macOS Developer directory
- In order to adapt the binaries to your Mac you need to compile the build tools utilities.
- Modifying the .js default configuration binaries location to point the installed ones
- Compile the template to see that all is ok
- Run OpenMSX and insert the ROM
Items in bold can be ignored if using the image I created and published on Docker Hub https://hub.docker.com/r/sergarbes/msxgl