Skip to content

ccharon/qrcode-asm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

This project is an 8086 assembly application for DOS that ports Nayuki Project QR code generation library and renders the result using CGA graphics output.

It is my second attempt to port this lib to 8088 Code. This Assembler Version is roughly 10 times faster than my previous Version which was a C++ Port. Performance tested on an NEC V20 with 9.7Mhz (NUXT 2.0). It went from 10-12s C++ to 1 - 1.5s ASM for smaller texts.

A precompiled MSDOS Executable qrcode.exe is provided. If I am not mistaken MSDOS 2+ is the minimum required Version. CPU requirement is a 8086 or Compatible.

QR Code Generator Dosbox Screenshot

Usage

Usage: qrcode.exe "<text>"

Options:
  <text>       The message to encode in the QR Code.

Examples:
  qrcode.exe "Hello, world!"
  qrcode.exe "WIFI:T:WPA;S:examplenet;P:secret;;"

Build

Run the build from this directory:

make

Useful targets:

  • make build builds QRCODE.EXE.
  • make test builds and runs the test executables.
  • make clean removes build artifacts.
  • make -DRELEASE build builds without debug flags.

Technical

Requirements:

  • DOS environment (real DOS or DOSBox-compatible setup)
  • Turbo Assembler (TASM) 2.0
  • Turbo Linker (TLINK) 3.0
  • Turbo Librarian (TLIB)
  • Borland MAKE 3.0

Project layout:

  • QRCODE.ASM: application entry point
  • lib/: QR encoding and support modules
  • test/: module-level tests
  • MAKEFILE: Borland MAKE build script

Licensing

This project is licensed under the MIT License. See: LICENSE

Third-Party Attribution (Nayuki)

The QR encoding logic in this project is based on:

Attribution:

  • Copyright (c) Project Nayuki
  • License: MIT

About

qrcode-asm is an 8088 assembler msdos qrcode generator, based on nayuki qr code generation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors