Coder Social home page Coder Social logo

realmode_code's Introduction

I've been delighted to have recently acquired a machine capable of running DOS
natively, which re-ignited my interest in realmode 8086 assembly programming.

This repository contains a few programs I wrote, mainly for fun.  The code
is written with an XT-class system in mind, and so it should work even on the
oldest of IBM PC compatibles.


The nasm dialect of 8086 assembly is used.  To assemble any of the files within
this directory, run:

  nasm -f obj FILE.ASM

You can aquire a copy of nasm here: https://nasm.us/


Additionally, you will need a Relocatable Object Module Format (OMF) linker to
create an executable file out of the assembled object files.

The linker I use personally is Anthony A.J. Williams' ALink, which you can
find here: http://alink.sourceforge.net/


Description of the individual code files:

  TEMPLATE.ASM - Template, inspired by the Art of Assembly book and NASM docs.

  HELLO.ASM    - Prints a message and the command-line arguments.

  DOSSYSCL.ASM - Routines to access DOS system calls in a well-defined manner,
                 and a strerror implementation.  Only a handful of system calls,
                 the ones I've needed thus far, are described here.

  DOSSYSCL.INC - Additional information regarding the above file.

  UTIL.ASM     - Various useful routines.

  TESTUTIL.ASM - Test program for the routines in the above file.

  B64.ASM      - Routines to encode and decode data to/from Base64.

  B64_CMDL.ASM - Program to encode the command-line arguments into Base64,
                 and decode them back.

  B64_FC.ASM   - Base64 file encoding and decoding utility.  This version
                 doesn't allow spaces and other separators in the input when
                 decoding Base64 data, and doesn't output any when encoding.

  B64_FC2.ASM  - An updated version of the above utility that does accept
                 spaces, tabs, newlines and other forms of blank spaces within
                 Base64-encoded input files, and generates its Base64-encoded
                 output (at most) 76 digits per line.

  SHA256.ASM   - SHA256 hashing module.

  SHA256_P.ASM - Test program that generates a SHA256 hash for the provided
                 command-line arguments text.

  SHA256_F.ASM - SHA256 file checksum utility.

realmode_code's People

Contributors

dusxmt avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

realmode_code's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.