beneath-apple-dos/appendixC.txt

696 lines
25 KiB
Plaintext

# APPENDIX C - GLOSSARY
ACCESS TIME
The time required to locate and read or write data on a direct access storage
device, such as a diskette drive.
ADDRESS
The numeric location of a piece of data in memory. Usually given as a
hexadecimal number from $0000 to $FFFF (65535 decimal). A disk address is the
location of a data sector, expressed in terms of its track and sector numbers.
ALGORITHM
A sequence of steps which may be performed by a program or other process, which
will produce a given result.
ALPHANUMERIC
An alphabetic character (A-Z) or a numeric digit (0-9). The term used to refer
to the class of all characters and digits.
ANALOG
As opposed to digital. Having a value which is continuous, such as a voltage or
electrical resistance.
AND
The logical process of determining whether two bits are both ones. 0 AND 1
results in 0 (false), 1 AND 1 results in 1 (true).
ARM
The portion of a disk drive which suspends the read/write head over the disk's
surface. The arm can be moved radially to allow access to different tracks.
ASCII
American Standard Code for Information Interchange. A hexadecimal to character
conversion code assignment, such that the 256 possible values of a single byte
may each represent a alphabetic, numeric, special, or control character. ASCII
is used when interfacing to peripherals, such as keyboards, printers, or video
text displays.
ASSEMBLY LANGUAGE
Also known as MACHINE LANGUAGE. The native programming language of the
individual computer. Assembly language is oriented to the machine, and is not
humanized, as is BASIC, PASCAL, or FORTRAN. An assembler is used to convert
assembly language statements to an executable program.
BACKUP
The process of making a copy of a program or data against the possibility of its
accidental loss or destruction.
BASE
The number system in use. Decimal is base 10, since each digit represents a
power of 10 (1,10,100,...). Hexadecimal is base 16 (1,16,256,...). Binary is
base 2 (1,2,4,8,...).
BINARY
A number system based upon powers of 2. Only the digits 0 and 1 are used. 101
in binary, for example, is 1 units digit, 0 twos, and 1 fours, or 5 in decimal.
BIT
A single binary digit (a 1 or a 0). A bit is the smallest unit of storage or
information in a computer.
BIT CELL
The space on a diskette, between two clock pulses, which can hold the value of a
single binary 0 or 1 (bit).
BIT SLIP MARKS
The epilogue of a disk field. Used to double check that the disk head is still
in read sync and the sector has not been damaged.
BOOT/BOOTSTRAP
The process of loading a very large program into memory by loading successively
larger pieces, each of which loads its successor. The program loads itself by
"pulling itself up by its bootstraps".
BRK
BREAK. An assembly langauge instruction which can be used to force an interrupt
and immediate suspension of execution of a program.
BUFFER
An area of memory used to temporarily hold data as it is being transferred to or
from a peripheral, such as a disk drive.
BUG
A programming error. Faulty operation of a program.
BYTE
The smallest unit of addressable memory in a computer. A byte usually consists
of 8 bits and can contain a decimal number ranging from 0 to 255 or a single
alphanumeric character.
CARRIAGE RETURN
A control character which instructs the printer to end one line and begin
another. When printing a carriage return is usually followed by a line feed.
CARRY FLAG
A 6502 processor flag which indicates that a previous addition resulted in a
carry. Also used as an error indicator by many system programs.
CATALOG
A directory of the files on a diskette. See DIRECTORY.
CHAIN
A linked list of data elements. Data is chained if its elements need not be
contiguous in storage and each element can be found from its predecessor via an
address pointer.
CHECKSUM/CRC
A method for verifying that data has not been damaged. When data is written,
the sum of all its constituent bytes is stored with it. If, when the data is
later read, its sum no longer matches the checksum, it has been damaged.
CLOBBERED
Damaged or destroyed. A clobbered sector is one which has been overwritten such
that it is unrecoverable.
CODE
Executable instructions to the computer, usually in machine language.
COLDSTART
A restart of a program which reinitializes all of its parameters, usually
erasing any work which was in progress at the time of the restart. A DOS
coldstart erases the BASIC program in memory.
CONTIGUOUS
Physically next to. Two bytes are contiguous if they are adjoining each other
in memory or on the disk.
CONTROL BLOCK
A collection of data which is used by the operating system to manage resources.
Examples of a control block used by DOS are the file buffers.
CONTROL CHARACTER
A special ASCII code which is used to perform a unique function on a peripheral,
but does not generate a printable character. Carriage return, line feed, form
feed, and bell are all control characters.
CONTROLLER CARD
A hardware circuit board which is plugged into an APPLE connector which allows
communication with a peripheral device, such as a disk or printer. A controller
card usually contains a small driver program in ROM.
CSWL
A vector in zero-page through which output data is passed for display on the CRT
or for printing.
CYCLE
The smallest unit of time within the central processor of the computer. Each
machine language instruction requires two or more cycles to complete. One cycle
(on the APPLE) is one micro-second or one millionth of a second.
DATA
Units of information.
DATA SECTOR BUFFER
On the APPLE, a 256 byte buffer used by DOS to hold the image of any given
sector on the diskette. As information is read from the file, data is extracted
from the data sector buffer until it is exhausted, at which time it is refilled
with the next sector image.
DATA TYPE
The type of information stored in a byte. A byte might contain a printable
ASCII character, binary numeric data, or a machine language instruction.
DCT
Device Characteristics Table. Used as an input parameter table to Read/Write
Track/Sector (RWTS) to describe the hardware characteristics of the diskette
drive.
DECIMAL
A number system based upon powers of 10. Digits range from 0 to 9.
DEFERRED COMMANDS
DOS commands which may (or must) be invoked from within an executing BASIC
program. OPEN, READ, WRITE, and CLOSE are all examples of deferred commands.
DIGITAL
As opposed to analog. Discrete values as opposed to continuous ones. Only
digital values may be stored in a computer. Analog measurements from the real
world, such as a voltage or the level of light outside, must be converted into a
numerical value which, of necessity, must be "rounded off" to a discrete value.
DIRECT ACCESS
Peripheral storage allowing rapid access of any piece of data, regardless of its
placement on the medium. Magnetic tape is generally not considered direct
access, since the entire tape must be read to locate the last byte. A diskette
is direct access, since the arm may be rapidly moved to any track and sector.
DIRECTORY
A catalog of all files stored on a diskette. The directory must contain each
file's name and its location on the disk as well as other information regarding
the type of data stored there.
DISK INITIALIZATION
The process which places track formatting information, including sectors and
gaps, on a blank diskette. During disk initialization, DOS also places a VTOC
and directory on the newly formatted disk, as well as saving the HELLO program.
DISPLACEMENT
The distance from the beginning of a block of data to a particular byte or
field. Displacements are usually given beginning with 0, for the first byte, 1
for the second, etc. Also known as an offset.
DRIVER
A program which provides an input stream to another program or an output device.
A printer driver accepts input from a user program in the form of lines to be
printed, and sends them to the printer.
DUMP
An unformatted or partially formatted listing of the contents of memory or a
diskette in hexadecimal. Used for diagnostic purposes.
ENCODE
To translate data from one form to another for any of a number of reasons. In
DOS 3.3, Data is encoded from 8 bit bytes to 6 bit bytes for storage on a DISK
II.
ENTRY POINT (EPA)
The entry point address is the location within a program where execution is to
start. This is not necessarily the same as the load point (or lowest memory
address in the program).
EOF
End Of File. This mark signals the end of a data file. $00 for APPLE DOS text
files.
EPILOGUE
The last three bytes of a field on a track. These unique bytes are used to
insure the integrity of the data which preceeds them.
EXCLUSIVE OR
A logical operation which compares two bits to determine if they are different.
1 EOR 0 results in 1. 1 EOR 1 results in 0.
FIELD
A group of contiguous bytes forming a single piece of data, such as a person's
name, his age, or his social security number. In disk formatting, a group of
data bytes surrounded by gaps.
FILE
A named collection of data on a diskette or other mass storage medium. Files
can contain data or programs.
FILE BUFFERS
In APPLE DOS, a collection of buffers used to manage one open file. Included
are a data sector buffer, a Track/Sector List sector buffer, a file manager
workarea buffer, the name of the file, and pointers. The DOS command, MAXFILES
3, causes 3 of these file buffers to be allocated.
FILE DESCRIPTOR
A single entry in a diskette directory which describes one file. Included are
the name of the file, its data type, its length, and its location on the
diskette.
FILE MANAGER
That portion of DOS which manages files. The file manager handles such general
operations as OPEN, CLOSE, READ, WRITE, POSITION, RENAME, DELETE, etc.
FILE TYPE
The type of data held by a file. Valid DOS file types are Binary, Applesoft,
Integer-BASIC, Text, Relocatable, S, A, and B.
FIRMWARE
A middle ground between hardware and software. Usually used to describe
micro-code or programs which have been stored in read-only memory.
GAPS
The spaces between fields of data on a diskette. Gaps on an APPLE diskette
contain self-sync bytes.
HARD ERROR
An unrecoverable Input/Output error. The data stored in the disk sector can
never be successfully read again.
HARDWARE
Physical computer equipment, as opposed to programs which run on the equipment.
A disk drive is an example of a hardware component.
HEAD
The read/write head on a diskette drive. A magnetic pickup, similar in nature
to the head on a stereo tapedeck, which rests on the spinning surface of the
diskette.
HEXADECIMAL/HEX
A numeric system based on powers of 16. Valid hex digits range from 0 to 9 and
A to F, where A is 10, B is 11, ... , and F is 15. B30 is 11 256's, 3 16's, and
0 1's, or 2864 in decimal. Two hexadecimal digits can be used to represent the
contents of one byte. Hexadecimal is used with computers because it easily
converts with binary.
HIGH MEMORY
Those memory locations which have high address values. $FFFF is the highest
memory location. Also called the "top" of memory.
HIMEM
APPLE's zero-page address which identifies the first byte past the available
memory which can be used to store BASIC programs and their variables.
IMMEDIATE COMMAND
A DOS command which may be entered at any time, especially when DOS is waiting
for a command from the keyboard. Deferred commands are the opposite of
immediate commands.
INDEX
A displacement into a table or block of storage.
INSTRUCTION
A single step to be performed in an assembly language or machine language
program. Instructions perform such operations as addition, subtraction, store,
or load.
INTEGER
As opposed to floating point. A "whole" number with no fraction associated with
it.
INTERCEPT
A program which logically places itself in the execution path of another
program, or pair of programs. A video intercept is used to re-direct program
output from the screen to a printer, for example.
INTERLEAVE
The practice of selecting the order of sectors on a diskette track to minimize
access time due to rotational delay. Also called "skewing" or interlacing.
INTERRUPT
A hardware signal which causes the computer to halt execution of a program and
enter a special handler routine. Interrupts are used to service real-time clock
time-outs, BRK instructions, and RESET.
IOB
Input/Output Block. A collection of parameter data, passed to Read/Write
Track/Sector, describing the operation to be performed.
I/O ERROR
Input/Output Error. An error which occurs during transmission of data to or
from a peripheral device, such as a disk or cassette tape.
JMP
A 6502 assembly langauge instruction which causes the computer to begin
executing instructions at a different location in memory. Similar to a GOTO
statement in BASIC.
JSR
A 6502 assembly langauge instruction which causes the computer to "call" a
subroutine. Similar to a CALL statement in BASIC.
K
A unit of measurement, usually applied to bytes. 1 K bytes is equivalent to
1024 bytes.
KSWL
A vector in zero-page through which input data is passed for from the keyboard
or a remote terminal.
LABEL
A name associated with a location in a program or in memory. Labels are used in
assembly langauge much like statement numbers are used in BASIC.
LATCH
A component into which the Input/Output hardware can store a byte value, which
will hold that value until the central processor has time to read it (or vice
versa).
LINK
An address pointer in an element of a linked chain of data or buffers.
LIST
A one dimensional sequential array of data items.
LOAD POINT (LP)
The lowest address of a loaded assembly language program -- the first byte
loaded. Not necessarily the same as the entry point address (EPA).
LOGICAL
A form of arithmetic which operates with binary "truth" or "false", 1 or 0.
AND, OR, NAND, NOR, and EXCLUSIVE OR are all logical operations.
LOOP
A programming construction in which a group of instructions or statements are
repeatedly executed.
LOW MEMORY
The memory locations with the lowest addresses. $0000 is the lowest memory
location. Also called the "bottom" of memory.
LOMEM
APPLE's zero-page address which identifies the first byte of the available
memory which can be used to store BASIC programs and their variables.
LSB/LO ORDER
Least Significant Bit or Least Significant Byte. The 1's bit in a byte or the
second pair of hexadecimal digits forming an address. In the address $8030, $30
is the LO order part of the address.
MASTER DISK
A DOS diskette which will boot in an APPLE II of any size memory and take full
advantage of it.
MICROSECOND
A millionth of a second. Equivalent to one cycle of the APPLE II central
processor. Also written as "Usec".
MONITOR
A machine language program which always resides in the computer and which is the
first to receive control when the machine is powered up. The APPLE monitor
resides in ROM and allows examination and modification of memory at a byte
level.
MSB/HI ORDER
Most Significant Bit or Most Significant Byte. The 128's bit of a byte (the
left-most) or the first pair of hexadecimal digits in an address. In the byte
value $83, the MSB is on (is a 1).
NULL
Empty, having no length or value. A null string is one which contains no
characters. The null control character ($00) produces no effect on a printer
(also called an idle).
NIBBLE/NYBBLE
A portion of a byte, usually 4 bits and represented by a single hexadecimal
digit. $FE contains two nibbles, $F and $E.
OBJECT CODE
A machine language program in binary form, ready to execute. Object code is the
output of an assembler.
OBJECT MODULE
A complete machine language program in object code form, stored as a file on a
diskette.
OFFSET
The distance from the beginning of a block of data to a particular byte or
field. Offsets are usually given beginning with 0, for the first byte, 1 for
the second, etc. Also known as a displacement.
OPCODE
Operation Code. The three letter mnemonic representing a single assembly
langauge instruction. JMP is the opcode for the jump instruction.
OPERATING SYSTEM
A machine language program which manages the memory and peripherals
automatically, simplifying the job of the applications programmer.
OR
The logical operation comparing two bits to determine if either of them are 1.
1 OR 1 results in 1 (true), 1 OR 0 results in 1, 0 OR 0 results in 0 (false).
OVERHEAD
The space required by the system, either in memory or on the disk, to manage
either. The disk directory and VTOC are part of a diskette's overhead.
PAGE
256 bytes of memory which share a common high order address byte. Zero page is
the first 256 bytes of memory ($0000 through $00FF).
PARALLEL
Opposite of serial. A communication mode which sends all of the bits in a byte
at once, each over a separate line or wire.
PARAMETER LIST
An area of storage set aside for communication between a calling program and a
subroutine. The parameter list contains input and output variables which will
be used by the subroutine.
PARITY
A scheme, similar to checksums but on a bit level rather than a byte level,
which allows detection of errors in a single data byte. An extra parity bit is
attached to each byte which is a sum of the bits in the byte. Parity is used in
expensive memory to detect or correct single bit failures, and when sending data
over communications lines to detect noise errors.
PARSE
The process of interpreting character string data, such as a command with
keywords.
PATCH
A small change to the object code of an assembly language program. Also called
a "zap".
PERIPHERAL
A device which is external to the computer itself, such as a disk drive or a
printer. Also called an Input/Output device.
PHYSICAL RECORD
A collection of data corresponding to the smallest unit of storage on a
peripheral device. For disks, a physical record is a sector.
POINTER
The address or memory location of a block of data or a single data item. The
address "points" to the data.
PROLOGUE
The three bytes at the beginning of a disk field which uniquely identify it
from any other data on the track.
PROM
Programmable Read Only Memory. PROMs are usually used on controller cards
associated with peripherals to hold the driver program which interfaces the
device to applications programs.
PROMPT
An output string which lets the user know that input is expected. A "*" is the
prompt character for the APPLE monitor.
PROTECTED DISK
A diskette whose format or content has been modified to prevent its being
copied. Most retail software today is distributed on protected disks to
prevent theft.
PSEUDO-OPCODE
A special assembly language opcode which does not translate into a machine
instruction. A pseudo-opcode instructs the assembler to perform some function,
such as skipping a page in an assembly listing or reserving data space in the
output object code.
RANDOM ACCESS
Direct access. The capability to rapidly access any single piece of data on a
storage medium without having to sequentially read all of its predecessors.
RAM
Random Access Memory. Computer memory which will allow storage and retrieval
of values by address.
RECAL
Recalibrate the disk arm so that the read/write head is positioned over track
zero. This is done by pulling the arm as far as it will go to the outside of
the diskette until it hits a stop, producing a "clacking" sound.
RECORD
A collection of associated data items or fields. One or more records are
usually associated with a file. Each record might correspond to an employee,
for example.
REGISTER
A named temporary storage location in the central processor itself. The 6502
has 5 registers; the A, X, Y, S, and P registers. Registers are used by an
assembly language program to access memory and perform arithmetic.
RELEASE
A version of a distributed piece of software. There have been several releases
of DOS.
RELOCATABLE
The attribute of an object module file which contains a machine language
program and the information necessary to make it run at any memory location.
RETURN CODE
A numeric value returned from a subroutine, indicating the success or failure
of the operation attempted. A return code of zero usually means there were no
errors. Any other value indicates the nature of the error, as defined by the
design of the subroutine.
ROM
Read Only Memory. Memory which has a permanent value. The APPLE monitor and
BASIC interpreters are stored in ROM.
RWTS
Read/Write Track/Sector. A collection of subroutines which allow access to the
diskette at a track and sector level. RWTS is part of DOS and may be called by
external assembly language programs.
SEARCH
The process of scanning a track for a given sector.
SECTOR
The smallest updatable unit of data on a disk track. One sector on an APPLE
DISK II contains 256 data bytes.
SECTOR ADDRESS
A disk field which identifies the sector data field which follows in terms of
its volume, track, and sector number.
SECTOR DATA
A disk field which contains the actual sector data in nibbilized form.
SEEK
The process of moving the disk arm to a given track.
SELF-SYNC
Also called "auto-sync" bytes. Special disk bytes which contain more than 8
bits, allowing synchronization of the hardware to byte boundaries when reading.
SEQUENTIAL ACCESS
A mode of data retreival where each byte of data is read in the order in which
it was written to the disk.
SERIAL
As opposed to parallel. A communication mode which sends data bits one at a
time over a single line or wire.
SHIFT
A logical operation which moves the bits of a byte either left or right one
position, moving a 0 into the bit at the other end.
SLAVE DISK
A diskette with a copy of DOS which is not relocatable. The DOS image will
always be loaded into the same memory location, regadless of the size of the
machine.
SOFT ERROR
A recoverable I/O error. A worn diskette might produce soft errors
occasionally.
SOFTWARE
Computer programs and data which can be loaded into RAM memory and executed.
SOURCE CODE
A program in a form which is understandable to humans; in character form as
opposed to internal binary machine format. Source assembly code must be
processed by an assembler to translate it into machine or "object" code.
SKEWING
The process of interleaving sectors. See INTERLEAVE.
STATE MACHINE
A process (in software or hardware) which defines a unique target state, given
an input state and certain conditions. A state machine approach is used in DOS
to keep track of its video intercepts and by the hardware on the disk
controller card to process disk data.
STROBE
The act of triggering an I/O function by momentarily referencing a special I/O
address. Strobing $C030 produces a click on the speaker. Also called
"toggling".
SUBROUTINE
A program whose function is required repeatedly during execution, and therefore
is called by a main program in several places.
TABLE
A collection of data entries, having similar format, residing in memory. Each
entry might contain the name of a program and its address, for example. A
"lookup" can be performed on such a table to locate any given program by name.
TOGGLE
The act of triggering an I/O function by momentarily referencing a special I/O
address. Toggling $C030 produces a click on the speaker. Also called
"strobe".
TOKENS
A method where human recognizable words may be coded to single binary byte
values for memory compression and faster processing. BASIC statements are
tokenized, where hex codes are assigned to words like IF, PRINT, and END.
TRACK
One complete circular path of magnetic storage on a diskette. There are 35
concentric tracks on an APPLE diskette.
TRANSLATE TABLE
A table of single byte codes which are to replace input codes on a one-for-one
basis. A translate table is used to convert from 6 bit codes to disk codes.
T/S LIST
Track/Sector List. A sector which describes the location of a file by listing
the track and sector number for each of its data sectors in the order that they
are to be read or written.
TTL
Transistor to Transistor Logic. A standard for the interconnection of
integrated circuits which also defines the which voltages represent 0's and
1's.
UTILITY
A program which is used to maintain, or assist in the development of, other
programs or disk files.
VECTOR
A collection of pointers or JMP instructions at a fixed location in memory
which allow access to a relocatable program or data.
VOLUME
An identification for a diskette, disk platter, or cassette, containing one or
more files.
VTOC
Volume Table Of Contents. Based upon the IBM OS/VS VTOC. On the APPLE, a
sector mapping the free sectors on the diskette and giving the location of the
directory.
WARMSTART
A restart of a program which retains, as much as is possible, the work which
was in progress at the time. A DOS warmstart retains the BASIC program in
memory.
WRITE PROTECTED
A diskette whose write protect notch is covered, preventing the disk drive from
writing on it.
ZAP
From the IBM utility program, SUPERZAP. A program which allows updates to a
disk at a byte level, using hexadecimal.
ZERO PAGE
The first 256 bytes of memory in a 6502 based machine. Zero page locations
have special significance to the central processor, making their management and
assignment critical.