Skip to content

nalamat/basm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BASM

The Basic Computer Assembler

What is BASM?

BASM is a user friendly and easy to use assembler for The Basic Computer, capable of creating the object, list and hex file and giving detailed error reports. It's more of academic use for students who wish to understand how does The Basic Computer actually work. Alongside this assembler, The Basic Computer Simulator (BSIM) is also available at: https://github.com/nalamat/bsim

How to use?

It is much more preferable to add BASM's 'bin' folder location to 'PATH' environment variable for both MS Windows and Linux users. You can also do it the easy way by copying the executable into a folder that is already added to 'PATH', like 'C:\Windows' or '/bin/' (Windows users should also copy two .dll files). Then simply open a terminal and type:

$ basm test.asm

The output will be written to files 'test.obj', 'test.lst' and 'test.hex', respective to their source file name. You may want to change them:

$ basm test.asm -o objectfile.obj -l listfile.lst -h hexfile.hex

Follow these links and see how to add a location to the 'PATH': http://windows7hacker.com/index.php/2010/05/how-to-addedit-environment-variables-in-windows-7/ http://linuxheadquarters.com/howto/basic/path.shtml

How to compile from source?

Windows users can open 'basm.sln' under 'prj\vs10' with Visual Studio 2010 or later (either the express or full version), and simply compile the solution. The executable output will be saved as 'bin\basm.exe'. Under linux, if you have g++ (GNU C++ Compiler), just run 'compile.sh' script:

$ ./compile.sh

In case something went wrong, change the script's permissions:

$ chmod 755 compile.sh

Then try running it again. The executable output will be 'bin/basm'.

License

BASM is free software: you can redistribute the software and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation.

BASM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with BASM. If not, see http://www.gnu.org/licenses/.

Web and contact

Visit BASM's page at GitHub: http://github.com/nalamat/basm

Ask questions, report bugs and give suggestions here: http://github.com/nalamat/basm/issues

Feel free to email me about anything: nima.alamatsaz@gmail.com

About

The Basic Computer Assembler

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages