QDot 8086

From Free Software Directory
 
Jump to: navigation, search


[edit]

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

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

AudienceResource typeURI
DevelopersVCS Repository Webviewhttp://github.com/oitofelix/qdot-8086/
UsersDownloadhttp://oitofelix.github.io/qdot-8086/qdot-8086-0.1.tar.gz
UsersHomepagehttp://oitofelix.github.io/qdot-8086/


Software prerequisites

KindDescription
Required to useNASM




Entry











"Author" is not in the list (Maintainer, Contributor, Developer, Sponsor, Unknown) of allowed values for the "Role" property.


"Developers" is not in the list (General, Help, Bug Tracking, Support, Developer) of allowed values for the "Resource audience" property.


"Users" is not in the list (General, Help, Bug Tracking, Support, Developer) of allowed values for the "Resource audience" property.


"Users" is not in the list (General, Help, Bug Tracking, Support, Developer) of allowed values for the "Resource audience" property.









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.