The 6502 and Z80 assembler.
Added a missing reference to the 45gs02 on the web page.
Bumped version number and updated web page.
Merge with 45gs02_support

heads

tip
browse log
version_1.29
browse .tar.gz

clone

read-only
https://hg.sr.ht/~bjonte/jasm
read/write
ssh://hg@hg.sr.ht/~bjonte/jasm

Building jAsm

jAsm currently compiles with CMake for Linux.

Command line build with CMake in Linux

To build with CMake you need CMake 3.5, Clang, Mercurial and python3 installed. On Debian, Ubuntu or Mint systems you can use apt-get to fetch the dependencies like this.

sudo apt-get install cmake clang mercurial python3

Clone the repository into a directory called 'jasm' and build it like this.

hg clone https://hg.sr.ht/~bjonte/jasm
cd jasm
export CXX=/usr/bin/clang++
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
sudo make install

More details about cross compiling for Windows is in the documentation.

Running Unit Tests

Run the unit tests using the python script unit_test_run.py. It runs under Python 3.

python3 unit_test_run.py

Add a unit test by placing a file called test_something.asm that produce the correct output in the unit_tests directory and run unit_test_generate.py. This will add the generated output in unit_tests/results and be considered the correct output for then on.

python3 unit_test_generate.py

Version Information

When building a release you must run the python script increase_revision.py to inject the current revision and hash into the source code. This change should never be submitted! Building with CMake run this automatically.

python3 increase_revision.py

There are also small scripts to update the major and minor revisions. These changes should be submitted.

python3 increase_major.py
python3 increase_minor.py