DOS65 manuals, sources, listings

DOS65 source listing
MON65 6502 monitor sources
MON65 65c02 monitor sources
IO65 ROM source listing
DOS65 utilities sources
IO65 manual english
DOS65 installation release notes

DOS65 utilities sources

Aanpassing VDU to get a better synced monitor signal
DOS65 AssemblerMW Patches on Micro Ade assembler-editor
DOS65 Assembler Manual Macro-assembler 65(C)02 dutch
DOS65 Editor manual dutch
DOS65 Comal programming manual dutch
DOS65 Eprommer Hardware
DOS65 Eprommer Sofware
DOS65 Hardware beschrijving
DOS65 IBM keyboard hardware en driver
DOS65 IO routines IO65 Routines manual dutch
DOS65 KB9 Basic manual
DOS65 Manual introduction and MON65
DOS65 Manual dutch
DOS65 Modem BCH1200A aansluiten
DOS65 Monitor MON65 monitor verie 2.01 dutch
DOS65 Ombouw CPU Replace the 6502 with a GTE 65SC02 P2 2 MHz
DOS65 Ombouw VDU for IBM CGA
DOS65 Printer EPSON print program
DOS65 ROM I/O 65 ROM routines listing
DOS65 Tape Basicode
DOS bouw Hardware beschrijving ombouw naar DOS65
DOS65 Commands Short command list of MON65, DOS65 EPROM programmer, Editor

From here you find the complete English DOS65 manual, the monitor commands and the API for the file system.

######	      ####	  ######	  ####	   ########
##    ##	    ##	  ##	##	##	##	   ##
##      ##  ##	    ##	##		##	   ######
##      ##  ##	    ##	  ######	######		 ##
##      ##  ##	    ##		##	##    ##	 ##
##    ##	    ##	  ##	##	##	##    ##   ##	 ##
######	      ####	  ######	  ####	     ####
Disk	  Operating	System		6502
----	  ---------	------		----
Copyright (c) de 6502 Kenners 1986	      DOS65-2 Manual	    Page 1
DOS 65 MANUAL VERSION 2.02 (1986).
INTRODUCTION:
DOS65 is a universal disk operating system for 65(C)02 computers.
DOS65 has been written by:              A.B.M. Brouwer.
Nieuwkoopseweg 44,
NL-2641 PB Pynacker, Holland.
This manual has been written by:        A.B.M. Brouwer
and
A.S. Hankel.
Translation from Dutch version:         Drs Conrad H.Kleipool
In case of problems, get in             Erwin Visschedyk
touch with:                             
Please  note  that  for DOS65, including without exception all for DOS65
written  or  developed utilities and associated software, also all DOS65
manuals and other descriptive material, applies:
COPYRIGHT (C) 1985 KIM GEBRUIKERSCLUB NETHERLANDS.
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual		Page 2
TABLE OF CONTENTS
page:
Table of Contents ...........................    2
CHAPTER 1       Specifications ..............................    4
Hard and software requirements ..............    4
CHAPTER 2       DOS65 glossary, definitions and miscellaneous    5
Default .....................................    5
Escape and control ..........................    5
Toggle ......................................    5
Control codes ...............................    5
File ........................................    5
Extensions ..................................    5
Options and parameters ......................    6
DOS65 and diskdrives ........................    6
Input/Output redirect, indirect files .......    7
Indirect command files with parameters ......    9
Drive- and Directory Specification ..........   11
DOS65 error messages ........................   12
CHAPTER 3       DOS65 Standard commands .....................   14
< ...........................................   14
<T ..........................................   14
> ...........................................   15
>> ..........................................   15
>T ..........................................   15
>P ..........................................   15
<> ..........................................   15
@ ...........................................   16
CHMOD .......................................   16
DIR .........................................   16
GO ..........................................   16
LCMD ........................................   16
LOAD ........................................   17
RUN .........................................   17
SAVE ........................................   17
SEE .........................................   18
STAT ........................................   18
SYNC ........................................   18
CHAPTER 4       DOS65 Utilities .............................   19
>D ..........................................   19
APPend ......................................   19
AS ..........................................   19
ASN .........................................   19
BOOTLINK ....................................   19
CAt .........................................   20
CLear .......................................   20
CO ..........................................   20
CREate ......................................   21
DDoctor .....................................   21
DELete ......................................   21
DPTime ......................................   21
DUmp ........................................   22
ECHo ........................................   22   
EDitor ......................................   22
FORMat ......................................   22
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual		Page 3
HElp ........................................   24
LIst ........................................   24
MAP .........................................   25
MEMFill .....................................   25
MEMMove .....................................   25
MONitor .....................................   25
MTOAS .......................................   25
OLOad .......................................   26
PLIst .......................................   26
PRInt .......................................   27
REName ......................................   27
RS232 .......................................   27
SDir ........................................   28
SETBegin ....................................   28
SETDrives ...................................   29
SETMode .....................................   29
SETPrompt ...................................   29
SETRtc ......................................   29
SETUp .......................................   29
TIme ........................................   30
TYpe ........................................   30
UNEXpand ....................................   30
VFORmat .....................................   30
CHAPTER 5       Filenames and special characters ...........      31
Filenames ...................................   31
Wildcards ...................................   32
Upper and lower case ........................   33
APPENDIX	DOS65 Installation Manual ...................         34
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual		Page 4
CHAPTER 1: SPECIFICATIONS DOS65.
- Suitable for:
* 5 1/4 inch disk drives (40/80 tracks, single- and double
sided, single- and double density).
* hard disk.
* virtual disk.
- Maximum formatted capacity per disk: 719 KBytes (5 1/4 floppy disk, 80
tracks, double sided, extra density).
- Supports:     FULL SCREEN EDITOR (ED)
ASSEMBLER (Moser, Micro-Ade, AS65 Assembler)
FORTH
BASIC
- Extensive input/output redirect possibilities,
- Very user friendly.
- Can be adapted to almost any 6502 system.
- Very efficient use of disk-space.
- Full documentation available.
- Transfer rate about 7 Kbyte/second.
- Simple hardware.
Hard and software requirements.
- DOS65 floppy-controller board. The bare board is available from the
KIM Users Club Holland.
- At least 56 Kbyte RAM memory.
- Terminal requirements: 80 columns, cursor positioning.
(the Elekterminal is not suitable).
- HAVISOFT I/O-program IO65 2.01 is available for implementation of
memory-mapped video on ELEKTOR's CPU/VDU configuration.
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual		Page 5
CHAPTER 2. DOS65-GLOSSARY, DEFINITIONS AND MISCELLANEOUS EXPLANATIONS.
Default:
Default  means normal  or  usual value of a variable.  If for instance a
variable  has a default value of 2, the number 2 will be substituted for
that variable unless the user has previously specified another value for
the variable.
Escape and control:
In  DOS65  the ESCAPE-key is used to indicate to the computer that after
the  ESCAPE-key  a  command  will follow. When the manual mentions ESC A
this  means  that  first  the  ESCAPE key and then the 'A' key has to be
pushed.  However, if the manual  refers to CTL A (control A) you have to
push both the control key and the 'A' key at the same time.
Toggle:
Toggle  means that a key can be used to switch a function on and off. If
key 'A' toggles a function, pushing the key will alternately switch that
function on and off.
Control codes:
Control  codes are ascii-codes with a value between $00 and $1F. Control
codes  are often used to command or control peripheral equipment such as
terminals, printers, modems, etc. Some controlcodes: BS (backspace $08),
LF (linefeed $0A).
File:
A file is essentially a collection of computer data with a specific name
tag attached to it and which has been recorded on a disk. These data can
be  transferred from disk to the computer memory and of course also vice
versa from memory to disk.
The data in a file can be of all kinds, such as a BASIC-program, a FORTH
screen, ASCII characters, but also programs in machine code or a list of
commands.  To  every  file  is  attached an identification tag, called a
filename,  so  every  file recorded on a disk has its own name. By using
special  commands  which we will discuss later, we are able to see which
files  are  recorded  on  a disk, what kind of file it is, determine its
length (how many data it contains) and many other features.
DOS65 distinguishes between three kinds of files:
- Ascii files   these  files  contain ascii characters  and  can only be
used  with 'ascii'  type commands,  such as:  List, See,
Create, Editor, etc.
- Hex files     program files in machine code.  These files are executed
by  the Run  command or  they can  be run  automatically
after typing in their filename (command files).
- Binary files  program files in machine code, but consisting of several
blocks of code each with its own load- and start
addresses. Otherwise same as hex files.
Extensions:
Each  file  has its own, unique name. However, it would be convenient to
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual		Page 6
determine from the filename what kind of file it is. This is the purpose
of the extension. The complete filename consists of the unique name fol-
lowed  by  an  indicator. On the disk is not only recorded the file with
the name FILENAME, but with FILENAME.XXX; XXX being the extension.
We suggest you use the following extensions:
.TXT    Source-file (Moser, Micro-ade)
.MAC    Assembler source file (AS65).
.DOC    Documentation-file (correspondence, text, etc.)
.LST    List-file (assembler listings, Basic).
.BIN    Object-file, binary file (machine code).
A  file  which  contains a letter, could be recorded as: LETTER.DOC; the
name  before the period is the unique filename followed after the period
by  the  indicator for the kind of file. In view of the interchangeabily
of  files within our Club we recommend that everybody uses the same kind
of extensions.
If  you  use  a  version  of Micro-Soft BASIC which has been adapted for
DOS65 you will encounted two extensions which are inserted automatically
and which cannot be modified by the user.
.BAS  indicates a  BASIC program  in tokenized  Basic format (each BASIC
keyword is stored as one byte).  If such a BASIC program is written on a
disk by  the command SAVE "NAME", the file will be recorded as NAME.BAS.
.VAR concerns a sequential data file, generated by BASIC, which has been
written on disk. A .VAR file may be recorded in Ascii and can eventually
be processed by the Editor.
Finally  we should  mention that  there are filenames without extension.
These are external DOS commands (utilities) or command files.
Options and parameters:
A  user  communicates  with  his computer by sending commands. The usual
procedure  is  to type in the name of a command followed by a return, or
'COMMAND  <cr>'.  The  sign <cr> in this manual means pushing the RETURN
key.
DOS65  offers  the  user the possibility to send along with certain com-
mands  additional data  such as options and parameters. These additional
options  modify  to  some extent the result of a command. Parameters are
numerals which are used to limit the range of a command.  In DOS65 para-
meters are used to add for instance linenumbers to commands.
Options must always be preceded by a - (minus sign).  Parameters must be
preceded by a + (plus sign).
The sequence of typing in a command with options and parameters must be:
command,  space, a minus,  one or more option characters, space, a plus,
first parameter, a comma, second parameter and finally a return.
Example:  LIST -CE +10,20.  LIST is the command in this example, -CE in-
dicates  that  we want to use options C and E. With +10,20 we are adding
parameters 10 and 20.
In  this manual  we will indicate the possible options and parameters by
putting these in the description of commands between brackets.
Example: LIST [-CELMN +m,n]  means that the LIST command has the options
C, E, L, M and N, and that one can add two parameters 'm' and 'n'.
DOS65 and disk drives.
DOS65  leaves  the  user  an ample choice of the number (1 or 2) and the
type  of  drives  (40  or 80 tracks, single- or double sided, single- or
double density).
DOS65  works  best  with  two  drives.  The  first  drive, which we call
drive-0, has the function of 'systemdrive'. This drive contains the sys-
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual		Page 7
temdisk  with  the  DOS65  program itself (the 'BOOT'file), the external
DOS65  commands  and utilities, and programming languages such as BASIC,
FORTH, etc.  The  second  drive  (called  drive 1)  is available as user
drive.  The  user  will work on this drive with his own files and record
software written by himself.
Working  with  a single drive is possible but not very user friendly. In
this  case  the  drive will be used both as system and user drive, which
will result in a frequent changing of disks.
To  recapitulate: DOS65 works best with two drives, double density (like
all  modern  drives)  and double sided. 80 tracks drives are preferable,
but even 40 tracks drives perform well, although they have only half the
capacity.
Input/output redirects.
Essentially every computer, whether an IBM mainframe or a Junior, can be
divided  into  three distinctive sections. Centrally we find the proces-
sing  unit,  consisting of the processor, memory, etc. This unit proces-
ses  data  and  commands,  according to a previously laid-down manner (a
program).
The  user  of  the  system  supplies these data and commands by means of
another  section,  the  input unit.  On the other hand the computer also
produces  data  which  are transmitted to the user by the third section,
the output section. Schematically we could draw this as follows:
----------------        -----------------       -----------------
I               I       I               I       I               I
I    INPUT      i->->->-i  PROCESSING   I->->->-I    OUTPUT     I
I               I       I CPU + MEMORY  I       I               I
----------------        -----------------       -----------------
Usually  we will use a keyboard for the input. Output is dispatched to a
CRT  screen most of the time. Sometimes input and output are combined in
a  so-called  terminal,  a  unit  which  comprises both a keyboard and a
screen.
Input  and  output redirect means that input or output are not channeled
through  keyboard  or CRT screen, but are directed from or to a file. An
example:  if  we  intend to work in BASIC, we will first start up Basic.
After  the BASIC  prompt the computer  will now  wait for input from the
user, who will type in a program.
An  input-redirect at this point accomplishes that the computer will not
wait  for  input  from the keyboard, but will get this input from a file
which has been previously recorded on disk. This could be a file written
with the editor.
Output-redirect:
Let  stay  with  BASIC  for  the time beeing. Supposing  we have a BASIC
program  stored  in  memory,  we could see this program on the screen by
using the LIST command. But if we want to edit such a BASIC program with
the  editor,  we  must  have it in a file. We can produce such a file by
means of an output redirect for later use in the editor.
Another  example: After writing a program in assembler language, we will
eventually  assemble  this  program.  On the screen will then appear the
assembly listing, possibly with error messages. By redirecting this lis-
ting to a file we will be able to study this listing later much more ef-
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual		Page 8
ficiently.
The  best  way  to  get acquainted with input and output redirects is to
experiment  with it and try out various possibilities. You will discover
that  there  are  much  more useful applications. It is a very efficient
tool for the system user to work with his computer.
Input redirect:
There are two kinds of input redirects, viz.:
- input redirect to provide input for a command.
- input redirect to execute a command file itself.
1.  The  syntax  of the first kind is: < FILE COMMAND <cr>. In this case
the  input  needed  after  executing  COMMAND will be fetched from FILE.
After  obtaining  this  file,  FILE  is closed and the input redirect is
ended. This kind of input redirect can be used with BASIC. For Basic the
input appears as if it is being entered from the keyboard. 
The sequence is as follows:
Enter:  < FILE BASIC <cr>
DOS65  will  first proceed to redirect input. If it succeeds in locating
FILE  on  the  userdrive,  BASIC  will be loaded and started. BASIC then
reports in in the usual way, for instance:
20473 BYTES FREE
MICRO-SOFT BASIC V1.1
OK
Normally, without the input redirect, the user will type in his instruc-
tions  after  the  prompt OK. With the input redirect these data will be
fetched from FILE. When all of FILE has been read in,  it will be closed
and  the  input  redirect ended. Such a BASIC file could be written with
the  Editor  which is a more user-friendly way than writing in Basic it-
self.
It  can  sometimes  be  convenient  to  write  a  indirect  command file
(filemode  -C bit set) with '< BASICFILE BASIC'.  By entering just 'COM-
MAND'  you  can start BASIC and execute at the same time the file BASIC-
FILE.
2. In case of an input redirect to execute command files, the syntax is 
as follows:
COMMAND <cr>
COMMAND  is  a  file containing a list of several individual commands (a
command in a command). Of course COMMAND must be a commandfile (filemode
C bit set), otherwise it  cannot be called as a command. Example of file
COMMAND-A  which  you can write with the CREATE command or with the Edi-
tor:
CAT
DIR
SDIR
If  we  enter COMMAND-A <cr> the commands CAT, DIR and SDIR are executed
as  if  they  were typed in from the keyboard and afterwards the command
input  file is closed. Command files can go two levels deep, which means
that a command file can include another command file.
Example:
File COMMAND-B:
COMMAND-A
TIME
BASIC
By  entering  COMMAND-B, COMMAND-A (see above) is executed, TIME is dis-
played and BASIC is loaded and started. 
Copyright (c) de 6502 Kenners 1986	DOS65-2 Manual		Page 9
Indirect command files with parameters
In  DOS65 version 2 it is now possible to insert parameters in a command
file, which  considerably enhances the possibilities of indirect command
files.
The syntax becomes: COMMAND [ARGUMENT-1] [ARGUMENT-2]
COMMAND  represents  the  filename of the indirect command file and both
arguments  are parameters which we can apply to specific individual com-
mands in our command file. Usually these parameters will be filenames on
which certain commands in the commandfile are to be executed.
First some limitations of the parameters:
- arguments must be separated by spaces.
- a maximum of two arguments.
- the total lenght of the two arguments together is maximum 24
characters.
- the arguments must be defined:
* at the start of the first level,
* with the last command of the first level.
- The characters "&1" and "&2" are used together with an
individual command line in the indirect command file and refer
to ARGUMENT-1 and ARGUMENT-2.
- Comments can be inserted in the command file provided they are
preceded by the character ';'.
WARNING.  If you want to experiment with the following examples, use
empty diskettes only. Always copy your systemdisk first, render the sys-
temdisk  write-protected  with  the  special  sticker and use empty user
disks only.
Examples:
Write a command file as follows (c.f. Create and Setmode commands,
chapter 4):
;this is file AAA
TYPE &1
;end file AAA
Line 1 and 3 are  comments because they are preceded by ';'.  The second
line  is the command TYPE and '&1' refers to the first argument which we
are going to enter together with file AAA.
If we execute this indirect command file by:
AAA TEST <cr>
the result will be:
TYPE TEST       (file TEST will be typed)
The  parameter  we  have  entered  at  the same time as the command file
(TEST)  has  been transferred to the individual commands by calling '&1'
or '&2'.
Now an example with two parameters:
;this is file AAA
TYPE &1
TYPE &2
TYPE &1.mac t.&1.mac
TYPE &1 &2
TYPE TEST-B
;end file AAA
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual             Page 10
If we enter: AAA TEST-B TEST-C the result will be:
line                input                       output
1               ;this is file AAA       no output, comment
2               TYPE &1                 TYPE TEST-B
3               TYPE &2                 TYPE TEST-C
4               TYPE &1.mac t.&2.mac    TYPE TEST-B.mac t.TEST-C.mac
5               TYPE &1 &2              TYPE TEST-B TEST-C
6               TYPE &TEST-B            TYPE TEST-B
7               ;end file AAA           no output.
Notes:
Line 1  is preceded by ';' and, as a  comment, does not have any effect.
In lines 2 and 3 you can see that '&1' and '&2' have been substituted by
the  arguments 1 and 2 of the command entry (TEST-B, TEST-C). In lines 4
and 5  we ordered  two files to be 'typed'; this a correct syntax as the
TYPE  command  allows  several filenames  to be  entered, separated by a
space.
In  line 4 the substitution has also taken place in the composite syntax
'&1.mac' and 't.&2.mac'.  Line 6: As '&' is not followed by the number 1
or  2  but  by a filename, the '&' is disregarded and the instruction is
executed as a simple 'TYPE TEST-B'.
If  you mistakenly enter only one parameter while the individual command
lines  call  for two parameters, the system will return an error message
as the second command will lack a filename.
If you enter in the above example:
AAA TEST-B <cr> the system will execute:
TYPE TEST-B
TYPE ?
ERROR MESSAGE
In  the previous examples file AAA was a first order file but it is also
possible to insert a command file in another command file.
Example:
;this is file QQQ
AAA &1 &2
;end file QQQ
We can now enter: QQQ TEST-B TEST-C <CR>
Execution  will be as above and the two parameters TEST-B and TEST-C are
first substituted in file AAA and subsequently in the individual command
lines of AAA.
Now a more practical example:
If  we  assemble  an AS65 source file called TEST.MAC, the assembled ma-
chine  code is saved on disk as binary file TEST.BIN. In order to trans-
fer  this  file  on the user drive to the system drive as a command file
you must execute the following operations:
- designate TEST.BIN as a command file,
- copy TEST.BIN (user drive) to TEST (systemdrive),
- delete TEST.BIN on user drive.
We  are  now able to incorporate these operations in a universal command
file  'MAKECOM'  which due to the parameter transfer, we can furthermore
use in all similar cases.
; file makecom
;
; make from .bin file a command
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 11
; delete .bin file
setmode -c U:&1.bin
copy U:&1.bin S:&1
delete -y &1.bin
; end makecom
Now  run the above command file as: makecom TEST <cr> and all above men-
tioned commands will be executed.
It  should  be  noted  that  the parameter transfer can also be used for
other data than filenames, such as options. Every time the '&' character
appears it will be replaced by the corresponding argument.
Example:
Create a command file:
; this is file PRINTFILE
>P PLIST &1 &2
; end file printfile
If you  enter:  PRINTFILE -F DOSMANUAL <cr>,  the file DOSMANUAL will be
printed with formfeeds (-F option).
Note 1:
The maximum number of files which may be open at any one time is limited
to  six. With an indirect of two levels, two spooler files and an assem-
bler which can open several files at the same time, this number is easi-
ly reached.
Note 2:
In  order  to  distinguish  between  ordinary  command files (containing
binary  code) and indirect command files, we recommend that filenames of
the  latter  kind are written in lower case. So 'TEST' instead of 'test'
and 'makecom' instead of 'MAKECOM'.
Output redirect:
Standard the output of programs goes to the screen. In case of an output
redirect  the  output goes to a file instead. The output redirect syntax
is:
> FILE COMMAND <cr>
When COMMAND has been executed, FILE is automatically closed.
Example:
> FILE DIR
Command  DIR  is executed and the output of DIR goes to FILE. Nothing is
visible on the screen.
Drive- and directory specification:
If  you  enter  a filename of a file which is not present on the default
drive,  you  must specify  the drive.  As a rule the system drive is the
default  drive for all command files, whereas all other files are called
from the user drive.
The  work drive  can be  regarded as  a scratch pad or a general purpose
drive.
DOS65 specifies drives as follows:
0:      drive 0
1:      drive 1
2:      drive 2
Copyright (c) de 6502 Kenners 1986	DOS65-2 Manual		Page 12
S:      systemdrive
U:      userdrive
W:      workdrive
A drive specification must be terminated by the character ':'.
Example:
cat             directory of user drive (default)
CAT S:          directory of systemdrive.
LIST 0:FILE     list FILE which is located on drive 0.
Directory specification:
DOS65  can allot 8 directories per disk, i.e. one root directory and se-
ven sub directories.
This  facility  acts  as  if  the  disk has been divided into 8 separate
sections.  At  one  time  DOS65 has access to one directory only on each
drive.  If no directory has been selected or assigned the root directory
acts as default directory.
If  for a drive a directory has been assigned, this directory is automa-
tically  selected if the drive is addressed. If you want to deviate from
this  directory  assignment,  you must specify the wanted directory with
the filename in the same manner as you specify a drive.
The  root directory  is specified  by the  character '@', the  seven sub
directories by 'A' through 'G'.
A sub directory  is automatically created if a file is written into this
directory and deleted if empty.
A directory specification is terminated by '/'.
Examples:
SAVE A/TEST     write file TEST to userdrive directory A.
LOAD 1:B/TEST   load file TEST from drive 1 directory B.
COPY 0:C/* 1:A/ Copy all files from drive 0 directory C to drive 1
directory A.
For more ample information refer to utility ASN, chapter 4.
DOS65 Error messages
During  a session situations can arise which result in an error message.
These situations are:
- an incorrect command is being entered,
- DOS65 reports an error from within the system.
In  most  cases DOS65 will return a short but adequate message, such as:
'read  error',  'option  error',  etc.   In rare cases however you could
receive a message "error n"; 'n' representing an error number. A list of
these error numbers follows:
1       memory full             trying to LOAD a file which exceeds
the available text buffer.
2       disk full               a WRITE overfilling the disk capacity.
10      file specification      filename exceeds 14 characters.
11      device or directory     incorrect drive or directory spec.
select
12      no filename             command cannot be executed without a
filename.
13      file not found          verify filename, drive- or directory
specification.
15      option                  incorrect option.
16      hex/dec data            parameters incorrect.
25      delete protected        disk mode is delete protected   (-RW)
26      write protected          "      "  " write      "       (-RD)
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual             Page 13
27      read protected           "      "  " read       "       (-WD)
28      permission denied       file is not a command file (not -C)
29      incorrect format        command can only be executed with ascii
files.
41      existing file           entered file already existing (possible
with the RENAME command).
42      not the same drive      RENAME command with incorrect drive
specification.
80      read error              deficient disk.
90      write error                "       "
C0      drive not ready         no disk in drive or door not locked.
D0      disk protected          write attempt on protected disk.
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual             Page 14
CHAPTER 3: DOS65 internal commands.
Internal commands are commands for which the software is resident in the
DOS65  program, the so-called kernel.  This is in contrast to the utili-
ties  and  external commands for which the software must first be loaded
from a disk before the command can be executed.
All  commands may be typed in upper or lower case.  Characters which are
essential  in  the  command descriptor are indicated in capitals in this
manual.  LC  has  the same effect as LCMD (LCmd), LO is the same as LOAD
(LOad).
In  the description of the internal commands in this chapter, and of the
utilities in chapter 4, the underlined characters constitute the command
or the utility being explained.  Options may also be typed in both upper
and lower case. The sequence is not essential:  -RWD has the same effect
as -WDR.  Parameters, such as those used in the SAVE command (BG,EN,ST),
must be separated by a comma.
If  a DOS65 user gives a command, the system will first check if this is
an internal command, as those described in this chapter.  If the command
cannot be found, DOS65 will  check whether the command is available as a
utility on the  system drive.  Those external commands will be described
in chapter 4.
If  one  wishes to select  a drive other than the default drive with the
command, one must add this instruction to the command.
Example:
The DIR command without any addition will provide the directory
of the user-drive. Other possibilities are:
DIR S: directory of the systemdrive,
DIR U: directory of the userdrive,
DIR 0: directory of drive 0,
DIR 1: directory fo drive 1.
Input/output redirect commands:
Input  redirect:  normally  input  of data from the user to the computor
is  carried  out  by  means  of  a  keyboard. If input is redirected the
keyboard  will be temporarily disconnected and data will be fetched from
a file.
Output redirect:  The output of a program normally goes to a screen.  An
output redirect will send the output to a file instead of to the screen.
After  execution of a command input and output will automatically return
to their normal positions, that is: the keyboard and the screen.
< FILE COMMAND.
The  input for  command is  fetched from FILE.  This enables the
user to initialise a command from FILE.
<T COMMAND
Reset  input  redirect, the keyboard is again released.  In fact
this command is redundant as normally an input redirect is reset
automatically  (see above). This command is only used in special
cases.
Copyright (c) de 6502 Kenners 1986	DOS65-2 Manual		       Page 15
> [-TF] FILE COMMAND
The output of command 'COMMAND' will be directed to file 'FILE'.
This  command  enables  the  user  to save the output on disk in
order  to  process  or rewrite it afterwards with the editor. If
'FILE'  does  not  yet  exist,  it  will be created. However, if
'FILE'  does  actually  exist  it will be overwritten by the new
file,  unless  'FILE' is write-protected. Also the existing file
must be of the ascii type.
Options:
-T      Output  goes both to 'FILE' and to the screen.  This can
be useful if you want to survey the result of 'COMMAND'.
Without  this  option the output goes only to 'FILE' and
nothing will be visible on the screen.
-F      Output is filtered before being directed to 'FILE'.  The
filter removes all graphic and control characters. Often
we do not need these characters in our file and they may
even cause problems.
The complete syntax of this command with options:
> -T FILE COMMAND       -T option only
> -F FILE COMMAND       -F option only
> -TF FILE COMMAND      both options are selected, this is the
most frequently used version.
>> [-TF] FILE COMMAND
The  effect is the same as > FILE COMMAND, but the output is ap-
pended  to the existing contents of 'FILE' and FILE is not over-
written.
Options: equal to > FILE COMMAND.
>T COMMAND
Reset output redirect: output is returned to video display. Like
<T, this command  is essentially redundant. It will only be used
to reset a permanent redirect (see below '<>' command).
>P COMMAND
A special kind of output redirect, the output will not be direc-
ted to a file but to the printer.
Option:
-T      Output also to the screen.
<> COMMAND
Permanent redirect.  This  command maintains the input or output
redirect after executing 'COMMAND' instead of the usual redirect
reset. It can be used to record several results in a single file
(output) or to fetch commands from a file (input).
Example:
< INPUT <> DIR  executes  the command 'DIR' and fetches the next
command  from file  'INPUT'.  As the DIR command itself does not
need any input, normally nothing will be read from file 'INPUT'.
If  you  do not add '<>', the input redirect will be reset after
executing  DIR  and the data in the INPUT file will not be used.
Practical  applications of this command are limited and you have
to be careful in its use.
@ FILE [parma parmb]
Executes  FILE as if it were a command file. It displays the ac-
Copyright (c) de 6502 Kenners 1986	DOS65-2 Manual		       Page 16
tual  command lines of FILE before executing these. In this res-
pect  the  '@'  command  differs from a real command file (c bit
set) which you execute by entering 'FILE <cr>'. In this case the
commands in FILE will not be displayed.
Options:
parma   parameter &1
parmb   parameter &2
(c.f. chapter 2, section concerning indirect files).
Example:
Suppose we have a file TEST, which contains:
ECHO This is file TEST.
Entering '@ TEST' will return:
ECHO This is file TEST. (the command entry)
This is file TEST. (the result of the command)
CHMODe -RWD FILE
This  command  changes the  mode of the file 'FILE' according to
the options you enter.
Some examples:
CHMOD -R FILE   Renders the file readable, the file can be read.
CHMOD -W FILE   Renders the file writeable, you can now write in
the file.
CHMOD -D FILE   renders the file deleteable, the file can be
erased.
CHMOD FILE      Nothing can be done with this file as it no
longer has a mode. It can not be read, written
or deleted.
Combination  options are possible such as -RW, -WD OR -RWD. As a
more elaborate change-mode the utility SETMODE is available
(c.f. chapter 4).
DIR [-/]
Shows the directory of a disk, the name of the disk and the num-
ber of free blocks. A block represents 256 bytes.
Option:
-/      Also displays any sub-directories.
Examples:
DIR             Directory of the user-drive.
DIR 0:          Directory of drive 0.
DIR -/          Show all directories of the user drive.
DIR -/ S:       Show all directories of the system drive.
Go XXXX
Executes  a program  or subroutine which starts at address XXXX.
XXXX is a hexadecimal number. If the routine ends by a RTS ($60)
it returns to Dos after execution.
LCmd
Executes  the  last used utility, of which the software is still
present in  memory.  This is a convenient way to recall the last
utility  without  having  to  load  the  program of that utility
again.
One  of many applications is the COPY utility when copying seve-
ral disks. Supposing that two disks must be entirely copied, the
first one will be copied as follows:
Copyright (c) de 6502 Kenners 1986	DOS65-2 Manual		       Page 17
COPY -W 0:* 1:          (Function *: c.f. chapter 5)
As  the program of the COPY utility after copying the first disk
is still resident in memory, it is no longer necessary to reload
the program again for copying the second disk. You can just type
in:
LC 0:* 1:
You  have to pay attention that nothing has been changed in that
part of the memory where the utility resides, otherwise the com-
puter  will crash  after LCmd. It is preferable to use this com-
mand only immediately after loading a utility.
LOad FILE BG,EN
The  file  'FILE'  will be loaded in memory from startaddress BG
till  endaddress EN.  BG and EN are both hexadecimal numbers. If
BG and EN are not entered, the startaddress will be fetched from
the  file  information  block.  If  the  file does not contain a
startaddress (0) an error message will appear and LOAD will stop.
Theoretically  the  maximum endaddress is $FFFF. If this address
is  exceeded  there  will also be an error message and LOAD will
abort.
In  practice  the  maximum endaddress will be lower as the upper
part  of  memory  of a 6502 system is always in ROM. The command
takes  into  account  that  the  file  may be recorded in binary
format.  A binary file can contain several distinctive blocks of
machine  code  with different loading addresses.  Therefore in a
binary file the start addresses and the length are recorded with
the  file.  If  the  user  enters a different startaddress for a
binary  file,  the  startaddress in the file will be disregarded
and  the whole file will be loaded from the entered startaddress
BG.
When  entering BG and EN you must be careful not to overwrite an
area  of  memory  where  DOS65  or its workmemory resides.  When
loading  long ascii files it is advisable to enter an endaddress
which  is below  the startaddress  of DOS65. Usually this start-
address is $A000.
Run FILE
Loads 'FILE'  from  the  indicated drive and executes this file.
The  file must  be  executable (SETMODE -E), otherwise it cannot
even be loaded. 
Examples:
RUN TEST        Loads and runs file TEST from userdrive.
RUN 0:TEST      The same from drive 0.
RUN S:TEST      The same from systemdrive.
SAve [-AB] FILE BG,EN,ST
Writes  a block of memory from BG till EN on disk under the name
'FILE'. It is essential to enter BG and EN in order to limit the
memory  block.  If  the startaddress of the program differs from
BG, the startaddress of the program itself can be entered as ST.
BG,EN and ST are all hexadecimal numbers.
Be  careful:  If  'FILE' is an existing file and also not write-
protected, it will be overwritten and erased.
Options:
Copyright (c) de 6502 Kenners 1986	DOS65-2 Manual		       Page 18
-A      Adds the data to an existing binary file; in fact an
append function.
-B      Records the file under binary format. Startaddress and
length will also be recorded with the file.
SEE FILE
Shows  an ascii file.  It is in fact a simplified version of the
LIST utility (c.f. chapter 4).
STAT
This  command  shows  you  which  files are still open. Normally
DOS65 will close all open files automatically after use. STAT is
only  used  if,  for  safety reasons, you want to make sure that
all  files  are  closed  before  switching your system off. (See
PRINT utility, chapter 4).
SYNC
This command closes all open files.
Option:
-N      Does not close the file which is in the process of
being printed.
Special use: a premature interupt of the PRINT command.
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 19
CHAPTER 4: DOS65 Utilities.
>D COMMAND
Output is redirected to a 'dummy routine'; the output of COMMAND
goes nowhere. After executing the command output goes back again
to the screen.
(This utility is not used very often. A practical application is
testing  a program without getting the output, which you may not
need at that moment.)
APPend [-AQW] FILE1 FILEn FILE
Put FILE1 till FILEn in FILE.
Options:
-A      Append to FILE (without overwriting FILE).
-Q      Request first if the located file must be put into FILE.
-W      Wait after COMMAND to enable user to change diskettes.
Examples:
APPEND FILE1 FILE2              Put FILE1 in FILE2
APPEND -A FILE3 FILE2           Add FILE3 to FILE2
APPEND FILE1 FILE2 FILE3 FILE   Put files FILE1, FILE2 AND FILE3
in FILE.
If only APPEND is entered, without filenames and options, a menu
of the APPEND command is dispayed on the screen.
AS [OPTIONS] FILE
Assembles the sourcefile FILE. FILE must have an extension .mac.
AS65 generates code which defaurlt will be written in file
FILE.bin. For more information see AS65 Manual.
ASN DRIVE= drive specification, directory specification.
Defines systemdrive, userdrive, workdrive and directories.
The use of the characters '=', ':' and '/' is optional (c.f. the
examples below).
Without  an entry for the directory the drive specification will
apply for the home directory.
Without an entry for the drives the directory specification will
apply for the user drive.
If  you  only  enter  ASN  without  parameters, the command will
return with the specifications actually in use.
Examples:
ASN S=0/@ U=1   system drive 0, user drive 1.
ASN S0 1        system drive 0, user drive 1.
ASN 1           User drive 1.
ASN W1:A/       work drive 1, directory A
ASN 1B          user drive 1, directory B
ASN B           user drive directory B
ASN             without parameters will return in this example:
S=0: U=1: W=1:G/
We  suggest the following settings for systems with two drives:
ASN S=0: U=1: W=1:G/ which you can incorporate in the file
LOGIN.COM.
The specifications will then be:
system drive 0
user drive 1 home directory
work drive 1 directory G.
BOOTLINK FILE
Due  to  the new organisation of the diskdrives in DOS65 version
2.01  it is essential to use this utility after copying the BOOT
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 20
file.  This  is the case after copying the system disk, making a
back-up of this disk, etc.
If  you wish to copy the systemdisk from drive 0 to drive 1, the
proper procedure is:
COPY 0:* 1:             Copy all files from drive 0 to drive 1.
BOOTLINK 1:BOOT         Execute BOOTLINK on file 1:BOOT.
BOOTLINK  places  a  pointer in a specific location on the disk.
This  pointer  is  necessary to load BOOT (that is DOS65 itself)
from IO65 by means of a B command.
The  bootstrap-loader  in IO65 cannot recognise the file BOOT if
this  pointer is not properly set and as a result it will return
a BOOT READ ERROR.
CAt FILE
CAT  (catalogue) command lists a directory with full information
of the disk. This information consists of the mode of each file,
its  number  in  the directory, the filename, the start address,
the length, the date and time of creation or modification of the
file.  There  is a header with the name of the disk and its date
of  creation  and  at  the  bottom  the number of free blocks is
printed. (A block is 256 bytes)
Examples:
CAT             Prints all files on the userdrive.
CAT 0:          All files on drive 0.
CAT *.TXT       All files (on userdrive) of which the filename
ends with '.TXT'
CAT FILE        Abovementioned information of file 'FILE' only.
Note: The function of the asterisk (*) is explained in
chapter 5.
CLear
Clears the screen.
COpy [-PQW] FILE1 FILE2
Copies  FILE1  to FILE2. If FILE2 has not been entered, the name
of  FILE1  will be used. However, in this case the copy of FILE1
must be recorded on a different disk than FILE1, otherwise FILE1
would be written twice on the same disk (c.f. examples).
FILE1  is  usually  a single name, but it could be several names
provided  these are separated by a comma and are recorded on the
same disk.
Options:
-P      Print a list of files which are being copied.
-Q      Request first if the located file must be copied.
-W      Wait after starting and subsequently every time a new
disk must be inserted in the drive.
Examples:
COPY 0:FILE1 1:         Copy  FILE1  from  drive 0  to drive 1.
COPY FILE1 FILE2        Copy  FILE1  to FILE2 on the user drive.
COPY 0:* 1:             Copy  all files from drive 0 to drive 1.
Copy -W 0:* 1:          Same as above, but wait  before actually
copying  to  enable  the  user to change
disks.
COPY 1:*.TXT 0:         Copy  all  files from drive 1 to drive 0
which end by '.TXT'.
If  you  only  type  COPY  without options or FILE a menu of the
possibilities of the COPY command will be dispayed.
Note:
The  function  of  the asterisk (*) will be further explained in
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 21
chapter 5.
CREate FILE
Creates  an empty ascii file with filename FILE. If FILE already
existed  it  will  be overwritten. The prompt will now change in
'&'  and  all  typed-in  characters will be written in FILE. The
last character can be erased by the <del> key.
If  at  the  beginning  of  a new line control D (CTL D, $04) is
typed  in  followed by a <cr> FILE will be closed and the CREATE
routine will be abandoned for a return to Dos.
DDoctor
This  utility  enables you to read specifific sectors of a disk.
The  sector  which has been read in is placed in a buffer and it
is  possible  to  move  this  buffer  to  a  second  buffer  and
vice-versa.  In  this  way  a  sector  can  be  moved or copied.
The  contents  of  the  buffer  can be modified in two ways: per
nibble  or per ascii character. DDOCTER has two possibilities to
address  a  sector.  The first one is 'logical' meaning that the
sectors are numbered in accordance with the interleave factor of
the disk (c.f. FORMAT command).
The second possibility is 'physical', in this case sectornumbers
correspond with the physical location of the sector on the track
without  taking  the interleave factor into account. The default
addressing mode is 'logical' addressing.
A  modified  sector  can be written back on the disk. It is also
posible  to  search  for a specific hex- or asciistring within a
sector, a track or on the whole disk.
Warning:  If you use this utility in a careless or inappropriate
way you risk destroying files or a whole disk. With this utility
you can obtain access to the internal DOS65 organisation and its
directory. We suggest that experiments should only be made using
obsolete disks.
DELete [-YW] FILE
Erase FILE from disk.
Options:
-W      Wait  after start to enable user to change disks (if you
only have one drive).
-Y      Delete without previously requesting whether the located
file may be deleted. This is a negative option i.e. nor-
mally   DOS65   will  always  request  prior  permission
before deleting a file.
Examples:
DELETE FILE     Delete FILE  from the user drive.
DELETE 0:FILE   Delete file from drive 0.
DELETE -Y FILE  Deletes FILE from user drive without requesting
prior permission.
DELETE -Y 1:*   Deletes all files from drive 1 without
requesting prior permission. The whole disk will
be erased.
DPTime [s]
Sets  the display time.  To avoid a burning-in of the CRT screen
the display will be blacked out if no key has been pushed during
the time set by [s].
This  display-time  is  entered as a number of seconds between 0
and 65535. Pushing any key reactivates the screen.
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 22
DPTIME  without  parameter displays the last entered value.  The
default value is 1800 seconds (30 minutes).
Examples:
DPTIME <ret>    returns with:"1800 seconds".
DPTIME 60       Sets the display time to 60 seconds.
DUmp [-CEM] FILE
Displays FILE as a hexdump.
Options:
-C      Clears screen before displaying hexdump.
-E      Loads FILE into 4 KByte buffer before starting hexdump.
-M      Stops hexdump after 20 lines. In order to display the
remainder of the file use the following keys:
<cr>    the next line.
D       the next 10 lines.
<space> the next 20 lines.
C       clear screen and the next 23 lines.
CTL C   abandon the command, return to Dos.
ECHO [-N] TEXT
This  command send the word 'TEXT' to the display. ECHO ABC puts
ABC  on  the  screen.  The  idea behind this command is that the
screen  could be an intelligent terminal which can be put into a
certain mode by means of the ECHO command.
A special application is >P ECHO TEXT. The text will now be sent
to  the  printer in order to put it in a certain mode (lines per
inch, special characters, margin, etc.).
TEXT  may  contain any character which you need to set your ter-
minal or printer, including all control characters. 
Option:
-N      No <cr>($0D) and <lf>($0A) will be sent after TEXT,
which normally is automatic.
Example:
Supposing that a printer can be put into 'elite' mode by sending
ESC B, the proper command would be:
>P ECHO -N <esc>B
EDitor [FILE]
Starts the full screen editor and wordprocessor ED65. If FILE is
entered  and  it is an existing editor file, it will be read in.
This  FILE  will  then  become the edit file (c.f. ED65 manual).
FORMat
Formats  a disk  for DOS65. FORMAT asks the following questions:
(* = default value).
Drive (0,1* or 2)?
Enter  here  the  number of the drive in which you have inserted
the disk to be formatted.
40(Y) or 80(*) tracks, 2 steps/track(2)?
Enter here whether you use a 40 or a 80-tracks drive. It is pos-
sible  to  format  with  2  steps per track; this enables you to
format a 40 tracks disk with an 80 tracks drive.
Single(Y), Double(*) or Extra density(X) Density?
Type  in the desired density. Attention: extra density cannot be
used for system-disks !
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual             Page 23
Single(Y) or Double(*) sided?
This depends on the kind of drive you use.
Interleave factor (2, 3*, 4 or 5)?
Enter here the interleave factor.
If  you  only  enter  a  <return> after the preceding questions,
DOS65 will insert the default values (*). Consequently your disk
will be formatted as follows:
Drive  1,  80  tracks,  double density, double sided, interleave
factor 3.
After  receiving the answers to these questions FORMAT requests:
Insert diskette in drive n
n represents the drive number you have previously indicated.
Next FORMAT will ask:
Are you sure?
If  you now answer 'N' the disk will not be formatted, it is now
advisable  to  check  whether  you  have  put the proper disk in
drive n. If you enter 'Y', FORMAT will ask:
Name of diskette ?
After  typing  in the diskette name (maximun 20 characters), the
disk will be formatted. 
If  a  malfunction  occurs during formatting the routine will be
terminated and track and sectornumber of the malfunction will be
put  on  display.  If  the  disk has been well formatted and all
tracks  on  the  disk check out properly, DOS65 will return with
the line:
'succesful format'.
TABLE of diskcapacity in 'free blocks' in relation to the drive.
Between parenthesis the capacity in KBytes.
single-density  double-density  extra-density
40 tracks, single-sided   397 ( 99)      637 (159)       717 (179)
40 tracks, double-sided   797 (199)     1277 (319)      1436 (359)
80 tracks, single-sided   797 (199)     1277 (319)      1436 (359)
80 tracks, double-sided  1596 (399)     2556 (639)      2876 (719)
Further explanation about the notion 'interleave factor':
Data is recorded on disks in tracks (40 or 80 per side).
The  tracks  are  divided  into  sectors.  The number of sectors
depends   on   the   recording   format:   single-,  double-  or
extra-density. At single-density the number of sectors per track
is  8, at double-density 16 and at extra-density 18. Each sector
contains  256 bytes. During the formatting operation each sector
receives  a number indicating the order in which sectors will be
read or written.
You  also  should know how DOS65 reads and writes on disk. DOS65
cannot  transfer  a  large block of memory in one single go, but
transfers  take place in blocks of 256 bytes, in fact in sectors
of 256 bytes.
In the following simple example we will explain a read operation
with sectors of 8 tracks each.
Supposing  that  DOS65  has been ordered to read in one complete
track of 8 sectors, the following sequence will take place:
- DOS65 waits until sector number 1 passes,
- sector #1 will be read into the sector buffer,
- the  contents  of  the sector buffer will be blockmoved to the
destination address,
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual             Page 23
Single(Y) or Double(*) sided?
This depends on the kind of drive you use.
Interleave factor (2, 3*, 4 or 5)?
Enter here the interleave factor.
If  you  only  enter  a  <return> after the preceding questions,
DOS65 will insert the default values (*). Consequently your disk
will be formatted as follows:
Drive  1,  80  tracks,  double density, double sided, interleave
factor 3.
After  receiving the answers to these questions FORMAT requests:
Insert diskette in drive n
n represents the drive number you have previously indicated.
Next FORMAT will ask:
Are you sure?
If  you now answer 'N' the disk will not be formatted, it is now
advisable  to  check  whether  you  have  put the proper disk in
drive n. If you enter 'Y', FORMAT will ask:
Name of diskette ?
After  typing  in the diskette name (maximun 20 characters), the
disk will be formatted. 
If  a  malfunction  occurs during formatting the routine will be
terminated and track and sectornumber of the malfunction will be
put  on  display.  If  the  disk has been well formatted and all
tracks  on  the  disk check out properly, DOS65 will return with
the line:
'succesful format'.
TABLE of diskcapacity in 'free blocks' in relation to the drive.
Between parenthesis the capacity in KBytes.
single-density  double-density  extra-density
40 tracks, single-sided   397 ( 99)      637 (159)       717 (179)
40 tracks, double-sided   797 (199)     1277 (319)      1436 (359)
80 tracks, single-sided   797 (199)     1277 (319)      1436 (359)
80 tracks, double-sided  1596 (399)     2556 (639)      2876 (719)
Further explanation about the notion 'interleave factor':
Data is recorded on disks in tracks (40 or 80 per side).
The  tracks  are  divided  into  sectors.  The number of sectors
depends   on   the   recording   format:   single-,  double-  or
extra-density. At single-density the number of sectors per track
is  8, at double-density 16 and at extra-density 18. Each sector
contains  256 bytes. During the formatting operation each sector
receives  a number indicating the order in which sectors will be
read or written.
You  also  should know how DOS65 reads and writes on disk. DOS65
cannot  transfer  a  large block of memory in one single go, but
transfers  take place in blocks of 256 bytes, in fact in sectors
of 256 bytes.
In the following simple example we will explain a read operation
with sectors of 8 tracks each.
Supposing  that  DOS65  has been ordered to read in one complete
track of 8 sectors, the following sequence will take place:
- DOS65 waits until sector number 1 passes,
- sector #1 will be read into the sector buffer,
- the  contents  of  the sector buffer will be blockmoved to the
destination address,
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 24
- DOS65 will now wait for sector #2 to pass under the recording
head,
- sector #2 will be read into the sector buffer,
- again a blockmove to destination,
- and so on until sector #8.
The  notion  'interleave  factor'  is  directly  related  to the
waiting  process  we  described  above. If we select 'interleave
factor '1', the sectors are numbered as follows:
1  2  3  4  5  6  7  8
In the above example we saw the following sequence:
- sector #1 was read in and blockmoved to destination,
- however,  during  this  operation sector #2 has already passed
the  recording head and DOS65 must now wait for the next pass of
sector  #2  after almost a complete revolution. In order to read
one  complete track of 8 sectors DOS65 would need 8 revolutions.
By  choosing  a  different  interleave  factor this delay can be
considerably reduced.
If  we set  the interleave factor at 3, the sectors will be num-
bered as follows:
1  4  7  2  5  8  3
Between  sectors 1 and 2  we  now find sectors 4 and 7 and if we
apply  this  to  our  example  you will see that DOS65 no longer
needs  to  wait  one revolution before locating the next sector.
The new sequence will be:
- sector #1 has been read in and blockmoved. In the meantime the
disk has continued to rotate and the head will be somewhere over
sector #7.
-  DOS65  starts  waiting  for  sector #2, which now comes after
sector #7 !   It is no longer necessary to wait one full revolu-
tion.
You  will  now  understand  that  the transfer speed between the
computor  and the disk is partially determined by the interleave
factor.  A  proper selection of this factor will render the best
possible transfer  rate  under the given circumstances.  We have
found  the value of 3 to be a good compromise for most applicat-
ions.  However, you are  free to experiment with other values if
you like;  the interchangeability of DOS65 disks is not affected
by the interleave factor.
HElp [FILE]
This  utility  provides  an explanation of the internal commands
and utilities of DOS65. If FILE is entered you will only receive
information concerning FILE, provided this information is avail-
able.
LIst [-CELMN +m,n] FILE
Displays FILE.  FILE must be an ascii file, otherwise DOS65 will
return an error message.
Negative characters will be printed as '~' characters.
DEL ($7F) and control characters will be printed as '^' charac-
ters.
A TAB character ($09) is executed as 8 spaces.
Options:
-C      Clear screen first.
-E      Use a 4 Kbyte buffer.
-L      Print a linenumber in front of each line.
-M      Pause after a certain number of lines. To continue
listing the file you may use the following keys:
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 25
<cr>    next line.
D       the next 10 lines.
<sp>    the next 20 lines.
C       clear screen and display the next 23 lines.
CTL C   Abandon LIST command.
-N      Do not convert <cr> as <cr> and <lf>.
+m,n    Display FILE from line n till m; lines are counted
according to the number of <cr> ($0D) characters.
Note:
The -N option  is used with printers which generate an automatic
linefeed after receiving a <cr>.
MAP FILE
Shows  how  a  binary  file is loaded in memory, i.e. the memory
blocks  of which the file consists. At the end will be displayed
the startaddress of the file (if available).
Example:
MAP S:EDITOR    will return with the display:
2000-3FFF
0400-04FF
0600-06FF
0580-05FF
0700-07FF
2000            (this is the startaddress).
MEMFill BEGIN,END,DATA
Fills  a  block  of memory from address BEGIN till END with byte
DATA.  This  command  must be used with care because if you fill
that  part of memory where DOS resides (usually $A000-BFFF) your
system will crash.
Example:
MEMFILL 2000,2FFF,AA    Fills memory from $2000 till $2FFF with
data AA.
MEMMove BEGIN,END,DEST
A  block  of memory from address BEGIN till END will be moved to
address  DEST  and  further. This is performed in an intelligent
way, implying  that DOS65 checks where to start.  If the memmove
is  'up',  meaning  to  a higher address, the program will start
moving  the  highest  address  upwards.  Vice-versa  for  a move
downwards.  This  way a memory block can be moved to an overlap-
ping location.
Example:
MEMMOVE 2000,2FFF,2800  Data  from  memoryblock $2000 till $2FFF
are moved to $2800 and upwards.  This is
an overlapping memmove. 
MONitor
Jumps to monitorprogram MON65, c.f. MON65 manual.
MTOAS [-OTFLU] FILE
Converts  an  assembler  source  file  from MOSER format to AS65
format.  This  utility is especially intended for users who pre-
viously  wrote  their sourcefiles in MOSER and wish to change to
AS65.  It is interesting  to convert former MOSER files to AS in
view of the enhanced possibilies and  higher assembling speed of
AS.
FILE  must  have extension .txt to be processed. Files generated
by  MTOAS receive the same filename FILE, but with the extension
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 26
.mac.  This  extension  is  essential for processing by the AS65
assembler.
Options:
-O      Output FILE.mac will not be generated.
-T      Output also to screen.
-F      No  output formatting. Between each field of source code
a space will be inserted instead of a tab character.
-L      Label, opcode and operand fields are converted to lower
case.
-U      Same as above, but conversion to upper case.
NOTE:
The  option -O seems senseless as no output file is produced. It
can  be  used  however  together with the T option as -OT, which
allows you to make a trial run of the conversion and monitor the
result on the screen.
OLOad FILE OFFSET
Loads  a binary file in memory, but takes into account the value
of  OFFSET  which  is  added  to the load addresses in the file.
OFFSET  must  be  a positive number and the sum has a maximum of
64K.  Beyond  that  number,  64K is substracted from the result.
Examples:
OLOAD FILE 1000         Loads FILE $1000 higher in memory.
OLOAD FILE F000         Loads FILE $1000 lower in memory.
PLIst [-Bn -Cn -E -F -Hn -Ln -Mn -N -On -Pn -Tn -U -W] FILE
List  FILE  with  a  page format. FILE must be an Ascii file. On
each  page  a header is printed showing time, date, filename and
page number.
Options:
-Bn     Break  after n characters the column and continue on the
next line with the remaining characters.
-Cn     Omit all characters beyond n in each column and continue
with the next line.
The B and C options are useful when printing in 2
columns.
-E      Do not print a heading (time, date, page, etc.).
-F      Print  a formfeed ($0C)  instead of empty trailer lines.
-Hn     Print  n empty header lines on top of each page. In case
of  a  heading  line with text, this line is included in
the number. Default value of n is 3.
-Ln     Total  number  of  lines  per  page (default is 72). The
number  of  printed  lines  per page is the total number
minus the header and trailer lines. (Default 72 - 3 - 3
= 66).
-Mn     Print  file  in  2  columns. The second column starts at
column n.  If  a line of the first column is longer than
n, the  line  of the second column will be printed imme-
diately  behind  the first column.  The  lenght  of  the
column  is  determined  by  the number of lines per page
(-Ln).
-N      Print file with linenumbers in front of the text.
-On     Print  n spaces at the beginning of each line (left hand
margin offset). This applies to the first column only.
-Pn     Start page numbering by n. Default is 1.
-Tn     Print  n empty  trailer  lines  at bottom of each page.
Default value is 3.
-U      If  possible  replace  multiple spaces by tab characters
(file compression).
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 27
-W      Wait  after  each page to change paper.  In this case no
empty trailer lines will be printed.
Note 1: The options of this command vary slightly from the usual
option  syntax.  Normally  you may enter all options at the same
time, but in PLIST you must enter these separately. For instance
-EHL066W  is  not  allowed, but must be typed in as: -E -H0 -L66
-W.
Note 2:  Default  the  output of this command is directed to the
screen.  In order to redirect the output to the printer you must
enter >P PLIST FILE.
If only PLIST is typed in without options or filenames the com-
mand will return a menu of possibilities and options.
PRint [-FNPT +m,n] FILE1 FILE2
Prints  FILE1 on the printer and also FILE2 if this filename was
entered. Options and parameters are valid for both files.
Printing  is performed as a background activity, that is, if the
computer  is not busy with other tasks.  It implies that you can
utilise  your  computer  normally  while printing is in process.
This is called the SPOOLING principle.
There  is  no printing during disk access or when the printer is
not ready.
Options:
-F      Print  formfeeds  ($0C)  instead of empty trailer lines.
-N      Do not convert <cr> as <cr> <lf>.
-P      Print  in  page  mode.  This  is only possible if the -N
option  has not been retained.  The page size may be ad-
justed by +m,n (see below).
-T      Do  not  expand  tabs,  i.e. Tab  characters will not be
replaced  by  a  certain number of spaces. However, tabs
can  only  be  expanded  if  the  -N option has not been
retained.
This  option is only useful if the printer is capable of
processing  tab  characters  ($09). Normally this option
is not used very often.
+m,n    Defines  a new page size.  M determines the total number
of  lines  per  page,  whereas  n  adjusts the number of
printed  lines. If you enter m=0, n will still determine
the number of printed lines after which a formfeed ($0C)
is  transmitted.  However, if you only enter m, n is set
as m minus 6 (6 empty lines).
REName [-W] FILE1 FILE2
Rename  FILE1 filename FILE2. FILE2 should not yet exist on that
disk and obviously select the same drive as FILE1.
Option:
-W      Wait after start to change disks.
Examples:
RENAME OLD.TXT NEW.TXT  Change  filename OLD.TXT into NEW.TXT on
the userdrive.
RENAME -W 0:JIM 0:BOB   Change  filename  JIM into BOB. The file
is recorded on the disk in drive 0. Wait
after start to change disks.
RS232
Adjusts  the  parameters  of the ACIA 6551. Without this utility
you  would  have to set individual bits in the Acia command- and
controlregister. RS232 allows you to easily adjust the following
parameters:  baudrate,  wordlength,  parity,  stopbits, receiver
clock,  receiver  mode,  receiver  interupt,  DTR  and  transmit
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 28
status.
The utility has 6 commands:
H       displays the help menu.
CTL H   shift left in the present parameterfield.
CTL I   shift right in the present parameterfield.
CTL J   to next parameterfield.
CTL K   to previous parameterfield.
Q       Quit RS232 utility.
After  entering  the  Q command you will be asked if the present
status  should  be written on disk. In that case these data will
be  recorded  on  the  systemdisk with filename RS232.DAT.  This
data  can  then  be  loaded in a subsequent session by typing in
LOAD  RS232.DAT  or  even  automatically if you incorporate this
command in the commandfile LOGIN.COM.
SDir [-IS]
Display a directory in alphabetical order.
Options:
-I      Non-significant  characters  of  the  filenames  will be
displayed   inverted.   Non-significant  characters  are
characters  which need not be typed in when entering the
name of a utility.
-S      Display output in a single column.
Examples:
SDIR            Alphabetical directory of the userdrive.
SDIR -I S:      An alphabetical directory of the systemdrive.
On  the  systemdrive are recorded all utilities.
As   all   non-significant   characters  of  the
utilities  will  be  displayed inverted, you can
easily  see how to type in the abbreviated names
of these commands.
SDIR   -S       Provides  an  alphabetical  directory with all
filenames  under  each  other in a single column
instead  of  in  five  columns. This can be very
convenient if you wish to copy a disk.
By means of an output redirect you can write the
output of SDIR to a command file.  In the editor
you  type  COPY  in  front  of  each line and by
executing  this  command  file you will obtain a
copied  disk  with all filenames in the direcory
in alphabetical order.
SETBegin FILE BEGIN
Changes  the  startaddress  of  FILE  to  BEGIN. When developing
software in the assembler it is not always possible to store the
object  code  immediately  in  the  proper  memory block. If the
object  code  is for instance written for startaddress $2000 you
cannot  store  the  object  code  there  during  assembly as the
assembler  itself  would  be overwritten and certainly crash. In
such  a case the object code is stored in a safe area of memory,
recorded  on disk and afterwards you can set the proper startad-
dress of the file by the SETBEGIN command.
Example:
Supposing  you  are  writing  a  program which will operate from
address  $2000 till $2100. In Moser source code you will include
.BA $2000 but you will add .MC $8000 in order to store the gene-
rated object code in address $8000 and up,as $2000 is not avail-
able during assembly.
This  object  code  is then written on disk by the DOS65 command
SAVE  FILE  8000,8100  and  FILE  will  automatically obtain the
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 29
startaddress $8000. By typing in SETBEGIN FILE 2000 you can cor-
rect this and FILE will now start at $2000.
Please note that you do not need this command with our assembler
AS65  as  this produces  binary files.  In these files load- and
startaddresses  are  written  in  the file itself and the use of
SETBEGIN is senseless.
SETDrives t1,t2
Sets  the  headselect  time  to  t1 and the motor-on time to t2.
The  default  values  are 5 seconds for t1 and 8 seconds for t2.
After  DOS65  has finished reading or writing the recording head
remains  in  contact  with the disk for t1 seconds and the motor
continues  to  turn  for t2 seconds.  These default values are a
good  compromise  between the extra wear during t1 and t2 on one
hand,  and  wear  caused by frequent head loads and motor starts
on the other hand.
SETMode -RWDPCE FILE
Changes the mode of a file.
-R      Readable, the file can be read.
-W      Writeable, one can write in the file.
-D      Deleteable, file can be erased.
-P      Not yet in use.
-C      Command, the file can be used as a command file.
-E      Executable.
-CE     This combination sets the mode at X, but is not yet in
use.
Combinations  of  these  modes are possible, so SETMODE -RW FILE
renders  a  file readable and writeable. You can change the mode
of  several  files  at  the same time by typing in the filenames
separated  by  a  comma  or  by  using  special characters (c.f.
chapter 5).
SETPrompt abcd
Changes the standard DOS65 prompt ($) into a prompt of maximum 4
ascii characters of your own choice.
Examples:
SETPROMPT + <cr>        Changes the prompt into '+'
SETPROMPT CTL G$ <cr>   prompt: a beep followed by '$'
SETRtc [H,M,S [D,M,Y]]
Sets  time and date of the real time clock if this device is im-
plemented. You do not need to enter the date if you only wich to
set the time.
Time or date must be typed in completely and in decimal numbers.
If  you  only  enter  SETRTC  without arguments the command will
print  time  and  date.  If  you  use the command without an RTC
board being connected you will receive     an error       message.
SETUp
This utility should be executed at the beginning of a session as
part of the file LOGIN.COM.
The functions of this command are:
- copy  the  real  time clock registers in the appropriate DOS65
registers.
- display a 'Hello' screen.
The  command  will return an error message if a RTC board is not
connected to the system.
Copyright (c) de 6502 Kenners 1986	    DOS65-2 Manual	       Page 30
TIme [H,M,S [D,M,Y]]
Set  time  and  date  of the internal clock, which is not a real
time clock and only provides this function if no real time clock
is build in.  You do not need to enter the date if you only wish
to set the time. Time or date must be typed in completely and in
decimal  numbers.  If  you only enter TIME without arguments the
command will print time and date. 
TYpe [-CELMN] FILE
Displays  an  ascii  file,  the  difference with LIST being that
characters  are  printed  literally,  which  means  that control
characters  will be displayed by their hexadecimal value.
Options: identical to LIST.
UNEXpand [-A] FILE
Replace  two  or more spaces ($20) by one or several tab charac-
ters  ($09)  but  only if these spaces are at the beginning of a
line. A tab is set as being equal to 8 spaces.
Option:
-A      Replace spaces everywhere in the line and not only at
the beginning.
VFORmat [-Y]
Formats  the virtual disk, if present in the system. The command
itself  determines  how  much memory is available on the virtual
disk. The virtual disk is defined as disk 2:
Option:
-Y      The  command  does  not ask prior to formatting "Are you
sure ? (Y/N)".
Copyright (c) de 6502 Kenners 1986	DOS65-2 Manual		Page 31
CHAPTER 5: FILENAMES AND SPECIAL CHARACTERS.
WARNING:
This chapter deals with a number of special facilities of DOS65. For the
experienced  user these possibilities can be very useful.  It will allow
you to enhance your work with D0S65.
However, we have to warn you against unexpected results of the exercises
described below. Therefore the following advice:
- Never  use  disks  with important files, such as the system disk, etc.
- Prepare  some  'dummy' files  on a separate disk and use this disk for
your experiments. This way nothing important can be erased.
Some general advice on this subject:
- Prepare  at  regular intervals copies (backups) of important files and
disks.  Disks are also subject to wear and magnetic information slowly
deteriorates, even if it is not read or used.
- Never  keep your backups with the other disks but store them in a safe
place.
- Regularly refresh your backups by copying them anew.
- Do  not  put disks on top of your monitor as the magnetic field of the
CRT may damage them.
- Always  remove  your  disks from the drives before shutting the system
down.
Filenames.
A  file is exclusively defined by its name. A filename may be 14 charac-
ters long and may contain all characters except:
<zero>  (Nul			$00
<cr>    (Carriage return        $0D
<sp>    (Space                  $20
<,>     (Comma                  $2C
Moreover there are special characters which are material when entering a
filename:
%       Defines  all  following  characters as being valid. This implies
that  the  characters $, %, :, `, ^ and ~ may be used in a file-
name.  Also  negative characters (bit 7=1) are allowed. However,
the special function of '?' and '*' is eliminated.
Example:
CREATE %$$$$$$          Creates a file with filename '$$$$$$'
\       The  effect resembles  that of '%', but  the escape  function is
valid for only one character.
Example:
CREATE \$\%\%\$         Creates a file with filename $%%$
$       Defines all characters following the character '$' as being non-
significant. This is a convenient way to abreviate the name of a
utility. The filename does not have to be typed in completely if
it has been defined in this manner.
Example:
The system-user has written a utility with filename 'NEWCOMMAND'.
In order to execute  this utility  you must  type in  NEWCOMMAND
<cr>.  It is  now possible to modify this filename in such a way
that only NEWC <cr> has to be entered.
Copyright (c) de 6502 Kenners 1986	DOS65-2 Manual		Page 32
Procedure:
- The file is renamed to a  temporary filename, which should not
already be present on the disk.
Command: RENAME NEWCOMMAND DUMMY
- This  temporary name  is renamed back to the original name but
now with the addition of '$'.
Command: RENAME DUMMY NEWC$OMMAND.
Note 1:
In  the  directory the full name NEWCOMMAND will be written, but
NEWC  <cr>  is sufficient to execute the command. NEWCO, NEWCOM,
etc  have the same effect, however any additional characters you
type in  should be correct.  The command NEWCA for instance will
be refused.
Note 2:
Renaming  to  a  temporary  file is necessary, as DOS65 does not
accept  the command RENAME NEWCOMMAND NEWC$OMMAND. For D0S65 the
two filenames are identical.
Note 3:
The  above  procedure  is  only valid for utilities, that is for
command files with filemode C set which are called directly from
DOS65. For all other files you must enter the complete filename.
Note 3:
Pay  attention  not  to abreviate two filenames identically. The
commands  NEWC$OMMAND and NEWC$ATALOGUE may appear different but
the  abbreviations  are  the same. If you enter NEWC<cr> in this
case,  DOS65  runs the corresponding file it encounters first in
the directory.
Wildcards.
A filename which is entered by the user does not have to correspond com-
pletely  with  the  filename in the directory. There are three so-called
wildcard characters which can be used to replace characters in the file-
name.
?       The interrogation mark '?' can replace just one (1) character in
a filename. This implies that any one character in this place is
correct.
Example:
DIR TE?T        Displays all  filenames of  which the  first two
characters are TE and the last character a T.
The third character is immaterial.
*       The '*' character  replaces 0 or  more characters in a filename.
This is convenient way to enter just the first few characters of
a filename  and to consider  the remainder as  'don't care'.  It
also enables you to compare a number of characters in the
middle.
Examples:
DIR *.TXT       Displays all filenames which end by 'TXT'.
DIR *COM*       Displays all filenames which contain the
characters COM.
DIR TEST*       Displays all filenames which begin with TEST.
~       The function of this character is the reverse of the previous
two wildcards, DOS65 will not display certain filenames if this
character is used in the typed-in filename.
Example:
DIR *~.b        Displays all filenames except those which end by
the extension '.b'.
Copyright (c) de 6502 Kenners 1986	DOS65-2 Manual		Page 33
Note 1:
In the  above  examples we only used the DIR command.  Of course
the wildcards can be used with any filename.
Note 2:
Of the above wildcards the * is most often used in practice, see
for instance the COPY command.
Note 3:
We  recommend  not to use  the wildcard *  in connection  with a
function which creates a file (SAVE, CREATE, etc.).
Suppose  there  is already a file 'TESTFILE'. If you would enter
now  SAVE  TEST* 2000,2FFF the file TESTFILE will be overwritten
and erased.
Upper and lower case.
When  opening  an existing file by typing in its filename for reading or
writing  in this file, the filename can be entered both in lower and up-
per  case.  If there is an existing file named 'TEST', you can call this
file by:
LOAD TEST       but also by:
LOAD test.
FORMAT          has the same effect as:
format.
However:
When  files are created the filename is inserted in the directory in the
same way as it was typed in, that is in either lower or upper case.  But
when  writing in a file, DOS65 does not make any distinction between up-
per  and  lower case. This could lead to loss of a file. Therefore never
create  two  files  with  the same filenames, one being in upper and the
other in lower case.
Example:
Suppose we enter the command: SAVE test. If the file 'test' does not yet
exist, it will be created with the filename 'test' in lower case. If the
file  'test'  did  in  fact exist, DOS65 will write in this file. But if
there  is  an existing file 'TEST' in upper case, a file 'test' will not
be created and the file 'TEST' will be overwritten !
Copyright the 6502 Kenners 1986		DOS65-2 Manual	       Page 34
APPENDIX: DOS65 INSTALLATION MANUAL.
First  of all make sure that your hardware is in perfect working
order  and in conformity with our hardware manual.  Installation is nor-
mally  very  simple and most problems are caused rather by harware defi-
ciencies than by our software.
Insert the supplied DOS65 eproms in the appropriate sockets. The
diskette  is single sided and either 40- or 80-tracks, depending on your
system.   Put  this  diskette in drive 0 and reset.  The system will now
enter  into  I/O65.  By typing in B, you will activate the bootstrap and
start DOS65.
At  the end of this appendix you will find a number of instruct-
ions which depend on the number and kind of your drives.   If you are in
doubt  or  if  you  cannot find a command you may use the HELP facility;
type in HELP followed by the desired command name. Just the command HELP
displays a list of all valid commands. By typing in a <return> DOS65 re-
turns to the command mode.
GENERAL.
- Start  by  making a copy of your systemdisk.   Do not forget the
BOOTLINK  command  which  you  must  always  use after copying a
systemdisk.  Extra  Density  is  not  allowed for a system disk.
If  necessary,  type  in  after  the  DOS65  command prompt ($):
HELP COPY <return>. 
- Start D0S65 from the diskette you have just copied (reset and B)
and call the configuration program (CONFIG). This program allows
adjusting DOS65 to your drives and installs the real time clock
program on address $E120 for the Elektor clock board. If you use
a  different  r/t clock board you may have to make other adjust-
ments.
- CONFIG will ask a number of questions about your system, such as
drive  steprate,  Xtal frequency of the r/t clock, which kind of
CRT  controller  (6545 or 6845),  etc.   After answering all the
questions  a  new DOS65 will be created and the proper R/T clock
routines installed. You must now reset and startup again.
- Except  for  the storage capacity, it does not make a difference
whether  you use 40- or 80-tracks drives.  If you have 80-tracks
drives  you  can  still  use  (format,  read  & write) 40-tracks
diskettes.  DOS65 checks itself whether a diskette is 40- or 80-
tracks  and  acts accordingly.    For  a  40-tracks  disk  in an
80-tracks drive D0S65 will supply two stepping pulses to step to
the  next  track  instead of one; there is no need to adjust the
hardware.
However, sometimes there are reading problems if a real 40-track
drive  tries to read a 40-tracks disk made on a 80-tracks drive.
A  real  40-tracks  drive tends to record data 'louder' and also
expects a 'louder' signal back. These kind of problems are rare,
however.
Copyright the 6502 Kenners 1986		DOS65-2 Manual	       Page 35
- Continue now with one of the following paragraphs:
1 Drive, single-sided.
This  system  is ready to be used. Please note the following in-
structions:
- Format  your disks single-sided only; double- or extra density
can be used if the diskettes permit this.
- If calling an utility, use the Wait option which allows you to
change disks after reading in the utility program.
2 Drives, single-sided
- Before starting a session type in the command:
ASN U=1:
Drive 0 will now be assigned as systemdrive and drive 1 as user-
drive.   We  recommend that you incorporate this command in the
file LOGIN.COM.
- Format your disks single-sided only;  double- or extra density
can be used if the diskettes permit this.
1 Drive, double-sided.
This  system is ready to be used.  Please note the following in-
structions:
- If calling an utility, use the wait option which allows you to
change disks after reading in the program of the utility.
2 Drives, double-sided.
- Before starting a session type in the following command:
ASN U=1:
Drive 0 will now be assigned as systemdrive and drive 1 as user-
drive.   We  recommend  that you incorporate this command in the
file LOGIN.COM.
- Format  you  disks  as you wish.  If you make a diskette for a
friend who only has single-sided drives, format that disk accor-
dingly.
Command list of MONITOR
@ xxxx         Modify address (use up and down arrow keys to go forwards
and backwards through memory).
B xxxx         Breakpoint address
B S	       Set breakpoint
B R	       Remove breakpoint.
C a1,a2,xx     Memory between a1 and a2 compared to xx
D xxxx         Dissasemble from xxxx
E xxxx         Execute address xxxx
F a1,a2,xx     Fill memory between a1 and a2 with xx
H a1,a2        Hex and ascii dump of memory between a1 and a2
M a1,a2,a3     Memory between a1 and a2 is copied starting at a3
L              List registers
P              Clears screen - purpose not known
Q              Quit
S a1,a2        Work out checksum of contents of addresses a1 to a2
V a1,a2,a3     Memory between a1 and a2 is compared to memory starting at a3
W a1,a2,xx..   Memory between a1 and a2 is searched for number or string xx
+ x,y          Performs 16 bit hex addition x+y
- x,y          Performs 16 bit hex subtraction x-y
$ xx           Converts decimal to hex
# xx           Converts hex to decimal
<              Continue execution from previous address
^S	       Pause during memory dump
^C	       Abort memory dump
^Y             Repeat previous command line
Functie beschrijving van DOS65.
-------------------------------
In DOS65 zijn standaard functies gedefinieerd die het filesysteem bijhouden.
Dit zijn:
- Create	Maak of open file om in te schrijven.
- Open		Open file om uit te lezen en/of in te schrijven.
- Close 	Sluit file.
- Delete	Verwijder file.
- Rename	Geef de file een andere naam.
- Status	Haal informatie op over de file.
- Read		Lees uit de file.
- Write 	Schrijf in de file.
- Seek		Zoek in de file.
Een file is uniek gedefinieerd door zijn naam. Deze mag 14 karakters lang
zijn en mag bestaan uit alle karakters behalve <nul>, <cr>, <sp> en ','.
Negatieve karakters (bit 7=1) zijn normaal niet toegestaan.
Speciale karakters tijdens het definieeren van de filenaam.
- ~	Zet een vlag zodat het resultaat na afloop van de filenaam
vergelijking met de directory entry omgedraait wordt (true <->
false). Dit kan handig zijn om een file te nemen die ongelijk is aan
de de opgegeven filenaam. 
- ^	Hiermee wordt er expliciet geen verschil meer gemaakt tussen kleine
en hoofd letters. Dit verschil wordt ook opgeheven indien in DOSMODE
bit 7 staat of bit 6 en er gezocht wordt naar een commando.
- %	Definieer de volgende karakters als letterlijk. Dit betekent dat de
karakters $, %, :, \, ^ en ~,  geen speciale functie meer hebben en
ook dat er negatieve karakters toegelaten worden. Tevens wordt er bij
het vergelijken van de directory entry met de opgegeven filenaam de
functie van '?' en '*' uitgeschakeld.
- $	Definieer de volgende karakters als negatief. Dit betekent dat als er
een commando wordt gezocht, dat deze karakters dan don't care zijn in
de zin van dat ze niet noodzakelijk moeten worden opgegeven. Dit
karakter heeft alleen zin als de file gecreerd moet worden. Immers
alleen dan worden er negatieve karakters in de directory geplaatst.
- \	Verzorg een escape functie. '\$' plaatst dus '$' in het filenaam
buffer ('\\' plaatst '\' in het buffer).
Een ander onderdeel van de filenaam is de selectie van de drive. Deze wordt
gedefinieerd aan het begin van de filenaam in de vorm van `n:' waarbij `n'
het drivenummer is. Als speciale drive specifikatie is er:
- S:	systeem (system) drive.
- U:	gebruikers (user) drive.
Achter de ':' komt de filenaam. S of U in de drive specificatie mag ook met
kleine letters worden opgegeven. 
De filenaam die opgegeven wordt, behoeft niet geheel overeen te komen met de
gevonden filenaam. Er zijn twee zogenaamde wildcards te weten 
- ?	'?' staat voor de match met precies een (1) karakter. Dit betekent
dat elk karakter op die plaats goed is.
- * 	het '*' karakter staat voor een match met nul (0) of meer karakters.
Dit is handig om een filenaam als gedeelte op te geven en dan de rest
als don't care te beschouwen. Hierbij kan ook een aantal karakters in
b.v. het midden worden gematcht.
De twee wildcards mogen herhaald gebruikt worden.
Voorbeelden.
's:test'	file 'test' van de systeem drive.
'~test*'	neem de file van de gebruikers drive waarvan de eerste 
vier letters niet gelijk zijn aan 'test'.
'0:*.txt'	neem van drive 0 de file(s) die eindigen op '.txt'.
'\\'		file '\'.
'%**'		file '**'.
Naast de filenaam is er ook nog de mode van de file. Deze wordt gedefinieerd
als de file gecreerd wordt. De filemode is een byte in de fileinformatie die
met de open functie gecheckt wordt. De mode is op te delen in 4 gedeelten.
Bit 7-5 r w d	Hiermee kan de file beschermd worden voor resp. lezen
schrijven en verwijderen. Tijdens de open functie wordt er
gecheckt of het desbetreffende modebit staat. B.v. open for read komt met
mode bit 7 set en bit 6,5 reset aan en test dus of in de fileinformatie het
modebit 7 staat. 
Bit 4 p 	Dit is een extra informatie bit dat verder de test tijdens de
open functie niet beinvloedt.
Bit 3,2 run	Deze twee bits geven aan of de file gerunt mag worden.
01 e	executable.
10 c	command.
11 x	(nog) niet gebruikt.
Bit 1,0 format	Hiermee wordt aangegeven wat voor soort file het is. 
01 a	ascii (tekst).
10 b	binair (object).
11 s	source (basic, moser etc.).
Bij elke functie is input nodig. Dit is aangegeven bij de beschrijving van de
functies. Output is alleen gedefinieerd als er geen fout is opgetreden. Dit
wordt gekenmerkt met het laag zijn van de Carry vlag (C=0). Als C=1 dan is er
de uitvoer van Error. 
Voor create, open en rename is er als input een filenaam nodig die meegegeven
wordt met (A,Y). A,Y is dan de pointer naar het eerste karakter van de
filenaam (A highadres Y lowadres). Bij het definieren van de filenaam worden
spaties aan het begin overgelagen. De filenaam wordt beeindigd met <null>
(00), <cr> (0D) of het <sp> (20) karakter. Voor rename staat de tweede
filenaam achter de eerste, gescheiden door een spatie.
A,Y			     A,Y
v			      v
------------------	      -------------------------
|f|i|l|e|n|a|a|m|00|	     |f|i|l|e|1|20|f|i|l|e|2|00|
------------------	      -------------------------
Voor read, write en seek wordt er gebruik gemaakt van vier opeenvolgende
geheugenplaatsen. A,Y wordt dan gebruikt als pointer naar de eerste plaats. 
read  write	       seek
-----------------	 -----------------
A,Y -> | beginadres low  |	|    functie	  |
|-----------------|	|-----------------|
|     ""     high |	|  64Kb aantal	  |
|-----------------|	|-----------------|
|aantal bytes low |	|aantal bytes low |
|-----------------|	|-----------------|
|  ""	  ""   high|	|  ""	  ""  high|
-----------------	 -----------------
Create
------
Maakt een file open om in te kunnen schrijven. Create doet eerst de open
functie voor schrijven en als de file niet bestaat, wordt de file gemaakt.
Input:	X	Mode die de file krijgt als zij gemaakt wordt.
(A,Y)	Naam van de file.
Output: X	Filenummer.
Error:	A	Foutnummer.
Een beschrijving van de filenaam staat bij de functie open. Indien er een
metakarakter in de filenaam staat en de file wordt gemaakt, dan wordt dit
karakter als normaal karakter beschouwd.
Beschrijving mode X.
Van mode X worden de hoogste vier bits (rwd en p) laag gemaakt waarna het w
bitje wordt geset. Hiermee wordt een 'open for write' functie uitgevoerd. Als
nu de file wordt gevonden, kan de open lukken als de file beschrijfbaar is en
de run/format mode klopt. Deze vier bitjes zijn immers niet veranderd. Als de
file niet gevonden wordt, maakt create de file met de opgegeven filemode. 
Uitzonderingen op de create zijn:
Het meegeven van het filenaam argument:
- A=$F8 De filenaam is al gedefinieerd.
- A>$F8 Gereserveerd.
Open
----
Er zijn een aantal mogelijkheden waarvoor de file geopend wordt. Dit kan
zijn: 
- r (read) open voor lezen
- w (write) open voor schrijven. De oude inhoud wordt verwijderd.
- r+ open voor lezen met de mogelijkheid tot schrijven in de file.
- w+ open voor schrijven met de mogelijkheid om te kunnen lezen.
Hiernaast is er de mogelijkheid om een file te openen die hierna verwijderd
kan worden. Verder zijn er mogelijkheden om alleen te kijken of de file
aanwezig is etc.
Input:	X	Mode voor te openen.
(A,Y)	Naam van de file.
Output: X	Filenummer.
Error:	A	Foutnummer.
Beschrijving mode X die wordt meegegeven.
Allereerst de vier hoogste mode bitjes.
Van de rwd modebits (bit 7-5) mag er maar een tegelijk hoog zijn. Er wordt
immers geopend voor read, write of delete. Als geen van deze drie hoog is,
wordt er niet naar gekeken. Om een file te openen voor r+ of w+ moet naast
het r of het w bit, bit 4 hoog zijn. Er wordt dan gekeken of de + optie
toegestaan is. Als alleen bit 4 hoog is, wordt de file gewoon geopend maar is
het niet mogelijk om de functies read, write, seek of delete op de geopende
file te doen.
De laagste vier bits (run, format) worden twee bij twee gecheckt. Als de twee
bits laag zijn (run of format), geldt dit als don't care en is de mode op die
positie niet van belang. B.v. een open met mode X=$80 kan dus alle files
openen waarvan het r bitje staat terwijl een open X=$81 alle ascii (bit 0,1 =
01) files kan openen die leesbaar zijn. 
Uitzonderingen op de standaard open zijn:
Het meegeven van het filenaam argument:
- A=$F8 Filenaam is al gedefinieerd. Sla dit dus over.
- A=$F9 Open de volgende file die met de eerder opgegeven filenaam gevonden
kan worden. Deze file kan gevonden worden omdat er enkele
metakarakters in de filespecificatie kunnen staan. 
- A=$FA Open de volgende en als deze niet gevonden wordt kijk dan of er een
filenaam achter de vorige filenaam staat. Vervolg hierna dan alsof
het een normale open functie is. Met deze mode is het dus mogelijk
een opsomming van namen te openen. Als de vorige filespecificatie met
';' is beeindigt (zonder spaties tussen de filenamen), dan worden er
dezelfde drive genomen die met de vorige filenaam zijn genoemd.
Opties (zoals '~') moeten wel opnieuw genoemd worden.
- A>$FA Gereserveerd.
De mode die X meeneemt:
- X=$00 Kijk alleen in de directory. Als de file gevonden wordt, wordt zij
=$01	niet geopend. Er wordt dus niet gekeken naar de mode van de file. De
foutvlag staat wel omdat de file na afloop niet geopend is. Als
foutnummer wordt 00 meegegeven. Deze mode wordt o.a. gebruikt voor
het DIR commando.
Error:	A	Foutnummer.
- X=$02 Gelijk aan de mode X=$00 alleen wordt tevens het fileinformatie blok
van de gevonden file opgehaald. Deze mode wordt o.a. gebruikt voor
het CAT commando.
Close
-----
Sluit de file. Als er in de file geschreven is, wordt de modify date
aangepast. De file wordt in zijn geheel gecontroleerd als de writecheck (bit
0 in DOSMODE) staat.
Input:	X	Filenummer.
Error:	A	Foutnummer.
Delete
------
Verwijder de file. De file moet geopend zijn voor te verwijderen. 
Input:	X	Filenummer.
Error:	A	Foutnummer.
Rename
------
Geef de file een andere naam. De namen moeten gescheiden zijn door een
spatie.
Input:	(A,Y)	Twee filenamen achter elkaar.
Error:	A	Foutnummer.
Status
------
Haal informatie op of schrijf informatie naar de file.
Input:	X	Filenummer.
Y	Status functie.
Error:	A	Foutnummer.
Functie	0	Positie in de file.
Output: A	3: Aan het begin.
4: Aan het eind. Dit is ook de waarde als de file lengte nul
heeft.
0: Indien niet 3 of 4.
Functie	1	Haal de mode van de file.
Output:	A	Mode van de file.
Functie 2	Definieer een nieuwe mode. Als de file gesloten wordt, wordt
deze in het fileinformatie blok bewaart.
Input:	A	Nieuwe file mode.
Functie 3	Haal het adres op van het filecontrol blok.
Output:	A,Y	Pointer naar het filecontrol blok.
Functie 4	Haal het adres op van het system informatie blok. Dit wijst
dus naar de desbetreffende disk drive.
Output:	A,Y	Pointer naar het system informatie blok.
Functie 5	Haal het adres op waar het eerste karakter staat van de
filenaam. Deze pointer wijst dus naar het geheugenblok waar
de directory in geplaatst wordt en is dus alleen maar geldig
als er ondertussen geen andere file geopend is.
Output:	A,Y	Pointer in het directory blok.
Functie 6	Haal de pointer naar het Track Sector List blok.
Output:	A,Y	Pointer naar het TSL blok.
Functie 7	Haal de pointer naar het eerste karakter van het data blok.
Output:	A,Y	Pointer in het data blok.
Read
----
Lees uit de file en plaats in het geheugen. De file moet geopend zijn om te
kunnen lezen (r r+ w+).
Input:	X	Filenummer.
(A,Y)	Beginadres en het aantal te lezen bytes.
Output: X	Filenummer.
Aantal gelezen bytes.
Error:	X	Filenummer
A	Foutnummer.
Aantal gelezen bytes.
Write
-----
Haal uit het geheugen en schrijf in de file. De file moet wel open staan om
in te kunnen schrijven (w w+ r+). Indien blocksearch (bit 1 van DOSMODE)
staat, wordt er in de free map gezocht naar de eerste van het aantal vrije
sectoren dat tesamen een aaneengesloten blok vormt dat vrij en benodigt is
voor het aantal te schrijven bytes. 
Input:	X	Filenummer.
(A,Y)	Beginadres en het aantal te schrijven bytes.
Output: X	Filenummer.
Aantal geschreven bytes.
Error:	X	Filenummer
A	Foutnummer.
Aantal geschreven bytes.
Seek
----
Zoek in de file met een bepaalde functie.
Functie:
- 1	Zoek t.o.v. het begin het aantal bytes vooruit.
- 2	Zoek t.o.v. de huidige plaats het aantal bytes vooruit.
- 3	Zoek t.o.v. het eind het aantal bytes vooruit.
- 4	Zoek t.o.v. de huidige plaats het aantal bytes terug.
- 5	Zoek t.o.v. het eind het aantal bytes terug.
Indien het eind van file bereikt wordt, gaat seek verder met 00 te schrijven
als dit toegestaan is (r+ w w+ geopend).
Input:	X	Filenummer.
(A,Y)	Functie en het aantal te zoeken bytes.
Output: X	Filenummer.
Aantal gezochte bytes.
Error:	X	Filenummer
A	Foutnummer.
Aantal gezochte bytes.
Naast deze standaard functies zijn er drie, van read, write en seek afgeleide
functies.
Single Read
-----------
Lees een (1) karakter uit de file.
Input:	X	Filenummer.
Output: X	Filenummer.
A	Het gelezen karakter.
Error:	X	Filenummer.
A	Foutnummer.
Single Write
------------
Schrijf een (1) karakter naar de file.
Input:	X	Filenummer.
A	Het te schrijven karakter.
Output: X	Filenummer.
A	Het geschreven karakter.
Error:	X	Filenummer.
A	Foutnummer.
Functie Seek
------------
Doet de functie seek met geen (0) of een (1) karakter(s). Er wordt met een
karakter gezocht bij mode 2 of 4.
Input:	X	Filenummer.
A	Functie.
Output: X	Filenummer.
Error:	X	Filenummer.
A	Foutnummer.
Foutnummers
-----------
Fouten tijdens create, open en rename hebben tot gevolg dat de file niet
wordt gezocht of dat een gevonden file niet wordt geopend. Fouten tijdens
close, delete, status, read, write en seek laten de file open. De fouten zijn
hexadecimaal opgegeven.
Fout die optreedt bij create, write en seek.
- 2	Diskette vol. 
Fout die optreedt bij seek.
- 3	Begin van de file. 
Fout die optreedt bij read.
- 4	Einde van de file. 
Fouten die optreden bij create, open en rename.
- 10	Opgegeven filenaam heeft meer dan 14 karakters. 
- 11	Device select. De gekozen drive bestaat niet of de specificatie 
voldoet niet.
- 12	Er is geen filenaam gedefinieerd (lengte nul).
- 13	De opgegeven file kan niet gevonden worden.
- 20	Er is geen vrij filenummer over.
Fouten die optreden met create en open.
- 21	De gevonden file is al open.
- 25	De file kan niet geopend worden om te verwijderen.
- 26	De file kan niet geopend worden om in te schrijven.
- 27	De file kan niet geopend worden om uit te lezen.
- 28	De run modebits van de file komen niet overeen met de gewenste run
mode.
- 29	De format modebits van de file komen niet overeen met het gewenste 
type file.
Fouten die optreden met close, delete, status, read, write en seek.
- 30	De file die correspondeert met het opgegeven filenummer is niet open.
- 31	Het opgegeven filenummer bestaat niet.
Fout die optreedt met delete.
- 35	De file is niet geopend om te verwijderen.
Fout die optreedt met write en seek.
- 36	De file is niet geopend om in te schrijven.
Fout die optreedt met read.
- 37	De file is niet geopend om uit te lezen.
Fouten die optreden met seek.
- 38	De file is niet geopend om uit te lezen of om in te schrijven.
- 39	De functie die wordt opgegeven bestaat niet.
Fouten die optreden met rename.
- 41	De tweede opgegeven file bestaat al.
- 42	De tweede file specificeert een ander device (diskette).
Fout die optreedt bij status:
- 46	Niet bestaande functie.
Andere fouten (disk errors) hebben als kenmerk dat het 8e bit hoog is
(negatief). Hierna wordt in alle gevallen de desbetreffende file altijd
gesloten zonder eventueel een geschreven file te controleren. Deze file is in
dat geval niet goed weggeschreven en is dus ook niet goed meer te lezen.
Voorkomende disk errors worden direct op de console terminal gemeld als bit 2
staat in de variable DOSMODE. De mogelijke fouten zijn:
- 80	Sector bestaat niet of kan niet gelezen worden.
- 90	Sector bestaat niet of kan niet beschreven worden.
- B0	Geselecteerde diskdrive en/of track bestaat niet.
- C0	Diskette bevindt zich niet in de drive.
- D0	Diskette is beschermd (write protected).
Bij de fout wordt 01 opgeteld bij de systeemsector, 02 bij een
directorysector en 04 bij een track-sector-listsector.