BASIC-DOS

A PCjs Retro-Programming Project

BASIC-DOS is on Twitter Project maintained by jeffpar

BASIC-DOS Technical Reference

Contents

The BASIC-DOS Technical Reference describes BASIC-DOS’s internal architecture and programming interfaces, for programmers writing software that runs on BASIC-DOS or working on BASIC-DOS itself. For information on using BASIC-DOS, see the BASIC-DOS Manual.

  1. Architecture
  2. DOS Functions (INT 21h)
  3. Utility Functions (INT 32h)
  4. Device Drivers
  5. Floating-Point Interface (FPU$)
  6. Data Structures

The definitions referred to throughout are found in the BASIC-DOS source code, primarily in these include files (in software/src/os/inc):

  • dosapi.inc: interrupt vectors, the basic FCB, open modes, MCB, standard handles, error codes, and the other DOS interfaces; optional sections are enabled by defining DOSFUNC (DOS and utility function numbers), DOSPSP (the PSP, EPB, SPB, and EXE header structures, which also enables DOSHEAP), DOSHEAP (just COMDATA/COMHEAP for COM files that can’t afford DOSPSP, eg DEBUG.COM), DOSFCB (the full and extended FCB structures), or DOSFFB (the FFB) before including it
  • devapi.inc: device driver headers, attributes, and IOCTL codes
  • dev.inc: device driver commands, packets, and error codes
  • dos.inc: internal structures (SCB, MCB, SFB, and the register frame)
  • fpu.inc: the FPU$ function table

NOTE: BASIC-DOS is a work-in-progress, and these interfaces may change.

« CoverArchitecture »

Copyright (c) 2020-2026 Jeff Parsons Released under MIT License