WLA DX (Wzonka-Lad Assembler Deluxe) ==================================== WLA DX - Yet Another ANSI C GB-Z80/Cx4/Z80/Z80N/eZ80/6502/65C02/65CE02/65816/68000/6800/6801/6809/8008/8080/HUC6280/SH-2/SPC-700/SuperFX Multi Platform Cross Assembler Package Azure Pipelines CI: * [![Build Status](https://dev.azure.com/villehelin0486/villehelin/_apis/build/status%2Fvhelin.wla-dx%20Linux%20Sanitizers?branchName=master)](https://dev.azure.com/villehelin0486/villehelin/_build/latest?definitionId=24&branchName=master) - Linux Sanitizers (ASan, UBSan, MSan) * [![Build Status](https://dev.azure.com/villehelin0486/villehelin/_apis/build/status%2Fvhelin.wla-dx%20Windows%20MSVC?branchName=master)](https://dev.azure.com/villehelin0486/villehelin/_build/latest?definitionId=23&branchName=master) - Windows MSVC * [![Build Status](https://dev.azure.com/villehelin0486/villehelin/_apis/build/status%2Fvhelin.wla-dx%20Windows%20Clang?branchName=master)](https://dev.azure.com/villehelin0486/villehelin/_build/latest?definitionId=22&branchName=master) - Windows Clang * [![Build Status](https://dev.azure.com/villehelin0486/villehelin/_apis/build/status%2Fvhelin.wla-dx%20Windows%20XP%2032-bit?branchName=master)](https://dev.azure.com/villehelin0486/villehelin/_build/latest?definitionId=26&branchName=master) - Windows XP 32-bit * [![Build Status](https://dev.azure.com/villehelin0486/villehelin/_apis/build/status%2Fvhelin.wla-dx%20macOS%20GCC?branchName=master)](https://dev.azure.com/villehelin0486/villehelin/_build/latest?definitionId=21&branchName=master) - macOS GCC * [![Build Status](https://dev.azure.com/villehelin0486/villehelin/_apis/build/status%2Fvhelin.wla-dx%20macOS%20Clang?branchName=master)](https://dev.azure.com/villehelin0486/villehelin/_build/latest?definitionId=20&branchName=master) - macOS Clang * [![Build Status](https://dev.azure.com/villehelin0486/villehelin/_apis/build/status%2Fvhelin.wla-dx%20Linux%20GCC?branchName=master)](https://dev.azure.com/villehelin0486/villehelin/_build/latest?definitionId=19&branchName=master) - Linux GCC * [![Build Status](https://dev.azure.com/villehelin0486/villehelin/_apis/build/status%2Fvhelin.wla-dx%20Linux%20Clang?branchName=master)](https://dev.azure.com/villehelin0486/villehelin/_build/latest?definitionId=18&branchName=master) - Linux Clang Documentation: [![Documentation Status](https://readthedocs.org/projects/wla-dx/badge/?version=latest)](https://wla-dx.readthedocs.io/en/latest/?badge=latest) - Read the Docs WLA DX is a set of tools to assemble assembly files to object or library files (`wla-ARCH`) and linking them together (`wlalink`). WLA DX isn't bound to one system (eg. NES or C64), but rather WLA DX allows you to define your own memory map (that should be shared across all object and library files). Supported architectures are: * Z80 * Z80N * eZ80 * GB (GB-Z80) * Cx4 * 6502 * 65C02 * 65CE02 * 65816 * 68000 * 6800 * 6801 * 6809 * 8008 * 8080 * HuC6280 * SH-2 * SPC700 * SuperFX Installing ========== See `INSTALL` for more detailed instructions. Compiling --------- You need: * CMake (at least v2.8.12) * ANSI C compiler * Sphinx (optional, min. v1.2.0, v1.6.0 recommended) (to generate docs) 1. `git clone https://github.com/vhelin/wla-dx # Clone the repository` 2. `cd wla-dx` 3. `mkdir build && cd build # Create building directory` 4. `cmake .. # Generate build system` 5. `cmake --build . --config Release # Build it` 6. `cmake -P cmake_install.cmake # Install it (optional)` If you didn't install it, you can still access the binaries in the `binaries` folder. It also contains the compiled documentation in the subfolder `doc`. You can add `-DCMAKE_INSTALL_PREFIX=prefix` to Steps 4 and/or 6 (before the `-P`) to set the prefix directory it'll install in. Usage ===== Use the [documentation](https://wla-dx.readthedocs.io/en/latest/) as a starting point. License ======= WLA DX is GPL-2.0-or-later software. See the file LICENSE or https://spdx.org/licenses/GPL-2.0-or-later.html for more information.