GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software Together.
Tiny assembler for 8086 / 8088, able to run over DOS for 8086 / 8088 machines.
Assembly C Batchfile
, --------., -. '. .-- '' - ', -, -,, -. , -., -, -. , ---. , -, -, -. | | , -. | '/', -. | (.- '| | | | | || || | '' - '| .-' ') | | | | `` - '' - `` - '' - `/` - `-` `---- '' -` - `- ' `--- ' Tinyasm 8086 / 8088 Assembler by Oscar Toledo G. Oct / 02 / 2019https://nanochess.org/https://github.com/nanochess/tinyasmTinyasm is a small assembler for 8086 / 8088 programs, and it can work over a real PC XT machine. It requires at least 128 K of memory, maybe more. It came to my attention that several people wanted to assemble my boot sector games over real PC XT machines. Unfortunately, nasm doesn't run over 8086 / 8088 processors, and I couldn't find a compatible assembler! So what does a programmer when doesn't find the required tool? Start to code his own tool! It took me 3 days to start from zero and get a working assembler compatible with the nasm syntax, plus all the directives I've used in my boot sector programs. Using the same command line syntax as nasm: tinyasm -f bin rogue.asm -o rogue.img -l rogue.lst There is also the -d option for define labels: -dCOM_FILE -dCOM_FILE=1 >>DIFFERENCES BETWEEN TINYASM AND NASM>>The main difference is that Tinyasm won't insert long jumps for miscalculated conditional jumps. There is only support for 8086 / 8088 processors, and only are implemented the following directives: % ifdef % ifndef % if % else % endif times Use 16 CPU 8086 equ db dw >>DEBUG NOTES>BUILDING THE ASSEMBLER>>You can build your own executable for Tinyasm using the C compiler Desmet C, version 3.1h available graciously at: http://www.desmet-c.com/The compiler has many bugs and limitations, but it works for tinyasm purposes, and it's freely available. Supposedly it should support ANSI C, but I couldn't fit a standard ANSI C function definition, so I had to code again in C K&R for the first time in maybe 20 Years! You can find the "e.bat" file to assemble the compiler. I provide an executable on the Git to save you some time. There are test cases in the 'test' subdirectory that are runnable with the "test.bat" file. There is a test for the full instruction set of 8086 / 8088 (the same listing that appears in my book Programming Boot Sector Games). The test cases come from my own programs:https://github.com/nanochess/fbirdhttps://github.com/nanochess/invadershttps://github.com/nanochess/pillmanhttps://github.com/nanochess/bootBASIChttps://github.com/nanochess/bootOShttps://github.com/nanochess/bootRogue>>ATTENTIONhttp://www.lulu.com/shop/oscar-toledo -gutierrez / programming-boot-sector-games / paperback / product - 24188564 .html Hard-cover http://www.lulu.com/shop/oscar- toledo-gutierrez / programming-boot-sector-games / hardcover / product - 24188530 .html eBook https://nanochess.org/store.htmlThese are some of the example programs documented profusely in the book: * Guess the number. * Tic-Tac-Toe game. * Text graphics. * Mandelbrot set. * F-Bird game. * Invaders game. * Pillman game. * Toledo Atomchess. * bootBASIC language.
GIPHY App Key not set. Please check settings