QDot 8086
QDot 8086
http://oitofelix.github.io/qdot-8086/
QDot 8086 is a mid-level programming language targeting the original IBM-PC architecture written as a set of macros for NASM — the Netwide Assembler
QDot 8086 is a mid-level programming language targeting the original IBM-PC architecture written as a set of macros for NASM — the Netwide Assembler. The idea behind it is to make it easy to write small, fast, correct and maintainable code in a language almost as expressive as C but without giving up all control Assembly language grants to programmers. It features support to functions of an arbitrary number of parameters and multiple return values, global and function-local variables, loop and conditional flow-control constructs, evaluation of arbitrarily complex stack-based expressions, symbol importing and primitive debugging. In order to accomplish this, NASM’s powerful preprocessing and assembling capabilities are used to achieve a machinery that very closely resembles a compiler. QDot has also a companion standard library that is fully BIOS-based, thus OS-independent, which provides array processing, keyboard, video, disk and speaker I/O, timing, low-level debugging, math functions, user interface procedures and last but not least a versatile metamorphic boot-loader, that makes it simple to build a binary that is simultaneously a valid DOS executable and a bootable image — a property known as run-within-OS-or-bootstrap-itself-without-OS. There are already a couple of programs implemented in QDot as a proof of concept: Terminal Matrix 8086 and DeciMatrix 8086. QDot currently supports only the tiny memory model (.COM binaries — whose code, data and stack fit all within 64kb segment boundaries).
Licensing
License
Verified by
Verified on
Notes
License
Verified by
Bruno Félix Rezende Ribeiro (oitofelix)
Verified on
12 August 2015
Notes
Source code
Verified by
Bruno Félix Rezende Ribeiro (oitofelix)
Verified on
12 August 2015
Notes
Documentation
Leaders and contributors
Contact(s) | Role |
---|---|
Bruno Félix Rezende Ribeiro (Ofelix) | Author |
Resources and communication
Audience | Resource type | URI |
---|---|---|
Developers | VCS Repository Webview | http://github.com/oitofelix/qdot-8086/ |
Users | Download | http://oitofelix.github.io/qdot-8086/qdot-8086-0.1.tar.gz |
Users | Homepage | http://oitofelix.github.io/qdot-8086/ |
Software prerequisites
Kind | Description |
---|---|
Required to use | NASM |
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.
The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.