"The Atari A to Z" by Mark S Baines Copyright (c) 1998 Mark S Baines All Rights Reserved YOU MUST READ "READ_ME.NOW" BEFORE YOU LOOK AT ANY OF THIS FILE ***************************************************************************** B Backing storage That part of a storage system where the contents of main memory (RAM) can be stored long term, i.e. disks, tape etc. Backspace A key that moves the cursor to the left by one space on the display screen, usually deleting that character. Backup To copy files from one storage location or medium to another location or medium. Usually the active set of files currently in use are saved onto another disk or tape and retained elsewhere for retrieval and use in the event of the original files becoming lost or corrupted. A backup can be 'full' where all the files are stored, or 'incremental' where only those files that have changed since the last backup procedure are stored. Either the file archive bit or the file's date stamp can be used to determine these files. Backup file A copy of a master file retained for reference and to use in case of the master file becoming corrupted or lost. Backward channel A supervisory channel on an asymmetric duplex circuit. Bar code An arrangement of lines and spaces designed to be read by an optical scanner which encode a series of numbers which act as an identification mark on a product or other item. Base In a positional representation numeration system, the amount by which a digit is multiplied or divided when moved to an adjacent position. In the decimal system, for instance, a 7 becomes 70 when moved one digit to the left. In hexadecimal, the base is sixteen and in octal it is eight. Binary, of course, has a base of two. Base address The lowest location in an area of storage. Basepage A 256-byte block of memory that GEMDOS allocates when an executable file is loaded, such as a .PRG or .TOS program. It contains information which the program may find useful when running. It has the following structure: typedef struct _base { void *p_lowtpa; /* pointer to bottom of TPA */ void *p_hitpa; /* pointer to top of TPA + 1 */ void *p_tbase; /* base of Text segment */ long p_tlen; /* length of Text segment */ void *p_dbase; /* base of Data segment */ long p_dlen; /* length of Data segment */ void *p_bbase; /* base of BSS segment */ long p_blen; /* length of BSS segment */ void *p_dta; /* pointer to current DTA */ struct _base *p_parent; /* pointer to parent's basepage */ void *p_reserved; char *p_env; /* pointer to environment */ long p_undef[20]; char p_cmdlin[128]; /* command line image */ } BASEPAGE; As can be seen, the basepage tells the program where the memory available to it starts and ends, where its Text, Data and BSS sections are, the location of the current Disk Transfer Address and the program's parent's basepage (usually the Desktop or a shell program), the environment strings and command line passed to it. See Text section, BSS section, Data section, DTA. BASIC Beginners' All-purpose Symbolic Instruction Code. A widespread high-level language originally designed for teaching in 1965 and originally used interactively rather than compiled. Despite some PC de facto standards most dialects are machine dependent preventing effective portability of the code. BASIC has become very well developed and functional in the past few years incorporating ideas from FORTRAN, Pascal and C. Batch A collection of related items that are processed together, such as a series of commands in a command line interface batch file or a stack of records needing updating. Batch file Command line interfaces, such as MS-DOS, have the facility where a series of commands normally typed into the computer, can be placed in a text file and read, translated and processed one at a time by the operating system. This makes repetitive command sequences easy, quick and error free. Such batch files can be used to set up a system's configuration, run programs with complex parameter lists, set up and run a simple menu system etc. These files normally have a .BAT file name extender and can be edited in a text editor. TOS has no provision for these useful techniques except that Desktop replacements and command line interfaces, such as NeoDesk and Gulam do allow for their use. Baud Rhymes with 'code'. The standard unit of expressing the data transmission capability of lines, terminals, modems etc. It is equal to the data- significant line transitions (change of voltage or frequency) that can be made per second and often confused with the transfer rate of bits per second. Using various techniques involving multilevel signalling, a 14,400 bits per second modem has a Baud rate of 2,400. Because of the misuse of this term and that the Baud rate of high-speed modems no longer matches their bits per second transfer rate, the latter is now more commonly used to indicate the transfer speed of a device. BBS Bulletin Board System. Also, Bulletin Board Service. BCD Binary Coded Decimal. A method of representing decimal numbers in binary notation in which each decimal digit is held in four binary digits between 0000 and 1001 (nine). The BCD of 65 would be 0110 0101 whereas in binary it would be %1000001. BCNU Be Seeing You. Commonly used shorthand in e-mail and other messages. BCPL Basic Combined programming Language. A high-level language which evolved into a language called B, which led to the development of C. Bee icon The GEM mouse cursor icon that is displayed whenever the ST-Falcon range computer transfers or retrieves data from a disk drive. Whilst this icon is present, no other operations can take place. BEL BELl. ASCII character 7 used to cause a tone to be generated at the terminal or computer to attract the user's attention. Bell The Bell telephone company in the US devised many standards for telecommunications which have been replaced by those of the CCITT. Benchmark To compare the relative performance of different computer systems, devices or programs by running benchmark programs which test a particular aspect of them, such as speed of processing or hard disk storage etc. Beta version Programs go through various stages of development near completion. The 'alpha' stage is an unfinished, in-house version and the 'beta' version is a near- finished version given to beta-testers to test in the field under various conditions and using different data types. Beta versions are not finished versions and are likely to be bug-ridden. Beta tester A person or company that tests unfinished, beta versions of programs for the programmer with the aim of finding bugs, incompatibilities and other design problems. BFN Bye For Now. Commonly used shorthand in e-mail and other messages. Bidirectional A device capable of handling data transfers in both directions on a data bus. In character printers, the capability of alternatively printing in both directions increasing the output speed. Binary A numbering system with a radix (base) of two consisting of two digits, a 0 and a 1. Thus, moving a digit one position to the left multiplies by two and moving it to the right divides by two. Each binary digit position is therefore twice that preceding it giving the sequence (in decimal) 1 2 4 8 16 32 64 etc. Decimal 22 is %10110 in binary, for instance. Binary numbers are, by convention, usually preceded by '%' to distinguish them from decimal numbers. Table B1: Decimal to Binary Conversion Decimal Binary 1 %1 2 %10 4 %100 8 %1000 16 %10000 32 %100000 So, 22 = 16 + 4 + 2 Decimal Binary 16 %10000 + 4 + %100 + 2 + %10 --- ------- 22 %10110 BIOS Basic Input/Output System. That part of TOS (as well as many other operating systems) that provides the low-level console and disk manipulation functions of the operating system. It is essentially the interface between GEMDOS and the hardware of the ST-Falcon range. It is concerned with the screen output, keyboard, joystick and mouse input, printer output, RS-232C functions and the disk drives. Generally, a programmer should have no need to call these functions but use GEMDOS ones instead, except where the GEMDOS functions have problems, such as when using the serial port. Table B2: BIOS Function Name Prefixes Prefix Meaning Bcon Direct access to character device I/O, e.g. Bconin() Drv Disk management, e.g. Drvmap() Get System level block inquiry, e.g. Getbpb() Kb Low-level keyboard driver information, e.g. Kbshift() Med Media inquiry functions, e.g. Mediach() L, R Logical device sector access, e.g. Rwabs() S System inquiry and manipulation, e.g. Setexc() T Time and date functions, e.g. Tickcal() BIOS errors The BIOS will occasionally return non-fatal and non-processor exception error messages from a program to the Desktop or other shell program. They may appear in an alert box or written to the screen. Table B3: BIOS Errors Name No Meaning E_OK 0 OK - no error ERROR -1 Fundamental error, such as drive not found EDRVNR -2 Drive not ready EUNCMD -3 Unknown command E_CRC -4 CRC error EBADRQ -5 Bad request,invalid command E_SEEK -6 Seek error, track not found EMEDIA -7 Unknown media (invalid boot sector) ESECNF -8 Sector not found EPAPER -9 No paper EWRITF -10 Write fault EREADF -11 Read fault -12 General error EWRPRO -13 Disk write protected E_CHNG -14 Media change, disk was changed EUNDEV -15 Unknown device EBADSF -16 Bad sector on formatting EOTHER -17 Insert other disk EDISC -18 Insert disk EDEVNRS -19 Device not responding EHARD -20 (unknown) BIT, Bit BInary digiT, a digit in the binary number system, a 0 or 1. Digital computers process data in digital form which are represented as binary numbers. These digits are usually represented in a computer by the voltages 5 V for a 1-bit and 0 V for a 0-bit. BitBlt, BitBLT BIT-BLock Transfer. A procedure that moves bit-aligned data from a source location to a destination location through a given logic operation. There are sixteen logic combination rules associated with the merging of source and destination data, such as 'source AND destination', 'source XOR destination', 'NOT destination' and so on. This algorithm can be used to perform text scrolling, window updating, pattern filling, area seed filling, slice and smear magnification, text transformation and general memory to memory block copying. Bitmap A list, usually a byte or word, in which each bit is representative of a separate item, such as a device. For instance, the presence or absence of disk drives and partitions on the ST-Falcon range is stored in a long word (32 bits) each bit being a one if a drive is present or zero if not. The bitmap 1101 therefore means that drives A:, C: and D: are present but B: is not. Bitmap font A typeface font that is constructed from a matrix grid of dots and manipulated and stored as such. All characters that appear on the screens of computers and as printed on paper are bitmapped even though some may have been stored and manipulated as scalable outline fonts which produce a bitmap to display. Bitmapped fonts have the advantage of ease of design, production and use but the disadvantages of requiring a separate font for each point size which takes up large amounts of memory and storage. Scaling characters up or down results in a poor, low quality appearance because the structure of each character contains limited information. See Outline fonts. Bitmap image An image on a display screen or as printed, that is made up of individual pixels which are set on or off or in one of many different colour states. The image is stored as such in a file and if in colour, may take up several bytes per image pixel, the result being a very large file. Such a file contains no extra information on the construction of the image, so that if a part of it is zoomed or enlarged, the result will be the enlargement of the individual pixels rather than revealing any 'extra' data hidden at a finer resolution level between them. Lines of one pixel width become two pixels wide with doubling of the image size and so on. This process results in the common staircase or jagging effect of the edges of images. Bitmap images are produced by painting programs, such as Degas, Neochrome and Touch-Up, and common formats are PI1/2/3 or PC1/2/3, NEO, GIF, TIFF or IMG, the latter being a standard under the GEM environment. See Vector image, Painting program, GEM metafiles. Bit-parallel A term used to signify the simultaneous and multichannel transfer of bit- patterns, such as bytes and words. It is the usual method of data transfer within computers. Bit-pattern A sequence of bits in storage, such as those that make up a byte or a character representation on a screen. Bit position The digit position in a binary number counting from the right. Bit rate The data transfer rate measured in bits per second. Bit-serial A term used to signify the sequential and single channel transfer of bit- patterns. It is the usual method of transfer over lines. Blank Not containing bit-patterns. Blank character A NUL character or sometimes a space. BLiTTER chip The Bit-Block Transfer Processor is an Atari custom designed coprocessor chip allowing BLiTting for faster text formatting and graphic operations. It is available in a 68-pin PLCC package taking all sixteen data and 23 address lines. The BLiTTER is basically a DMA device and is the hardware implementation of the BitBLT algorithm used in the Line-A emulator. Single word or multi-word increments and decrements are provided for transfers to destinations in ST video display memory. Source and destination memory blocks to be transferred can even overlap, clipping areas can be defined, boolean transformations made and a centre mask is provided for an additional level of texture. The BLiTTER has its own memory range and performs its functions independent of the CPU and usually allows the CPU to perform other tasks (mainly interrupt handling) sharing the bus equally with each taking 64 bus cycles while the other is halted. Another mode, called hog mode, can be used where the BLiTTER takes over the bus for as long as necessary unless pre- empted by other DMA devices. Most operations do not use hog mode meaning that the speed of the BLiTTER is not fully utilized. The BLiTTER's bit-orientation compared to the byte and word-orientation of the CPU, makes it ideal for manipulating bit-images with the net result that VDI and Line-A routines are improved by 30-40%. The BLiTTER is fitted to the Mega ST, STE, Mega STE and Falcon030 as standard. The TT was deemed (mistakenly) to be powerful enough not to need one. See BitBLT, BLiT. BLiT BLock Transfer or BLock Image Transfer. The process of moving or copying a block of memory from one position to another. The method results in very fast transfers of data. See BitBLT. Block A unit of data transferred over communications lines or onto storage or an area of storage allocated to a program for use. Also, a program unit in source code, say between the { } marks in C. BNC Bayonet Nut Coupler. A connector where the plug and socket fit together with a 'push and twist' action like a bayonet lamp bulb fits into a lamp holder. Board A printed circuit board. Boldface A type face that is heavier or darker that the medium face of the font. Bombs When an error occurs on the ST-Falcon range that has corrupted the operating system in such a way that it can't recover from it, TOS displays a row of bomb icons across the screen warning the user of what has happened. The best remedy is to switch off the computer and wait about twenty seconds or perform a reset, although the latter may well not cure the problem as it does not carry out a full system initialization. Some programs, such as NeoDesk will attempt to capture the state of the computer before a crash and restore the system without having to do a reset. Table B4: Bomb Numbers Bombs Meaning 2 Bus error 3 Address error 4 Illegal instruction 5 Divide by zero 6 CHK instruction, indexing error 7 TRAPV instruction, overflow error 8 Privilege violation 9 Trace error 24 Spurious interrupt others May be combinations of the above, one row of bombs printed after another. My record is about 60! See Exception vectors, Bus error, Address error, Illegal instruction, Zero divide, CHK instruction, TRAPV instruction, Privilege violation, Trace error, Spurious interrupt. Boolean algebra Logical relationships by the use of expressions in which each element can have only one of two possible values, usually expressed as 'true' or 'false' or represented in computers as 1 or 0. Boolean expression An expression, such as A AND B which when evaluated produces either a 'true' or 'false' result. Boolean operator A logic operator, such as AND, OR or NOT. Boot or Booting To load up an operating system into the computer. Originally called 'boot- strapping' from the expression "To pull yourself up by your own bootstraps". Initially, a few instructions from ROM are carried out at power up which bring about the loading of other programs into main memory (the operating system) from disk or ROM. After these programs have carried out their tasks of initializing the system, the computer is ready to accept input. Boot disk On the ST-Falcon range, a disk (usually drive A: or C:), sometimes containing an executable boot sector, that automatically runs one or more programs upon power up or reset and/or contains accessories, the AUTO folder and the DESKTOP.INF or NEWDESK.INF file. Boot sector Track 0 Sector 1 Side 0 of a disk containing the BIOS Parameter Block, the flag for whether it is executable at boot-up and space for a very small program automatically loaded upon switch on or reset. Most games use this facility. This is also where most viruses copy themselves to. Values shown are for an 80 track, nine sector double-sided disk. Table B5: Boot Sector Byte Item Value 0- 1 Boot program branch instruction if executable 2- 7 "Loader" or third party formatter name 8- 10 24-bit serial number 11- 12 Bytes per sector 512 13 Sectors per cluster 2 14- 15 Number of reserved sectors including boot 1 16 Number of file allocation tables 2 17- 18 Maximum number of directory entries 112 19- 20 Total number of sectors 1440 21 Media descriptor byte (not used) 249 22- 23 Number of sectors in each FAT 5 24- 25 Number of sectors in each track 9 26- 27 Number of sides 2 28- 29 Number of hidden sectors 0 30-509 Available for short boot program 510-511 Checksum BPB Bios Parameter Block. A data structure in the boot sector of a disk containing information on how the disk is formatted and its capacity. Table B6: BIOS Parameter Block short recsiz Sector size in bytes short clsiz Cluster size in sectors short clsizb Cluster size in bytes short rdlen Root directory length in sectors short fsiz FAT size in sectors short fatrec Sector number of the second FAT short datrec Sector number of the first data cluster short numcl Number of data clusters on the disk short bflags If bit 0 = 1 a 16-bit FAT is used, else a 12-bit FAT For a standard double-sided disk the following values are found: recsiz 512 clsiz 2 clsizb 1024 rdlen 7 fsiz 5 fatrec 6 datrec 18 numcl 711 BPI Bits Per Inch. A measurement of storage density on disk or tape surfaces being the amount of bits in each inch of track length. BPS, bps Bits Per Second. The measurement of data transfer on a serial interface, often and incorrectly called the Baud rate. Branch One of several sequences of instructions in a program that may be followed depending on the result of a test applied to some data. Break To discontinue transmitting or receiving a message without completing it. Breakpoint The place in a program where execution is to be stopped, usually temporarily so that a programmer may make some check on it. BS BackSpace. BSI British Standards Institute. The UK organization that publishes standards for product performance and a member of ISO. BSS section One of the three sections of an executable program as produced by an assembler or compiler and linker. It contains the program's uninitialized variables. See Basepage, Text section, Data section. BTW By The Way. Commonly used shorthand in e-mail and other messages. Bubblejet printer Synonymous with inkjet printer. Buffer An area of storage where data is held temporarily to facilitate transfer between two devices working at different speeds. For instance, a RAM memory buffer is used to store incoming data from another computer which is intended to be stored on disk. If that data was stored directly to disk, byte by byte, the transfer would take longer to perform being continually held up by the slower disk's performance. Bulletin board system - BBS A network of privately owned computers accessed via modems to which messages and private mail can be sent and received. The messages and their replies form conversations contained within subject-specific conferences or echoes. PD and shareware files can be obtained for downloading as well as databases of text files providing useful information. Bulletin boards are accessed free of charge and provide a cheap way to contact like-minded people being the equivalent of electronic users' groups. Bug An error in a program or system software. The term was originally coined when in a very early valve computer, a crash in the system was found to have been caused by a moth shorting out two circuits. The misclassified moth died! Burst mode The MC68030 CPU in the TT and Falcon030 can support burst mode memory access using nybble mode RAM, such as Fast RAM, although Fast RAM is not supported in the Falcon030. Normally, it takes four clock cycles to set up an access to Fast RAM on the TT, but in burst mode the CPU fills up its on-chip cache at one cycle per subsequent access. This enables four long words of data to be fetched into the CPU in half the time of normal memory fetches. The memory chips must support static column or page modes for this to work. Bus A major path for data transfer within a computer or other device. Bus error A processor exception that occurs when a program tries to reference memory that does not exist or is protected from being accessed. The MMU provides this protection, such as the first 2,048 bytes which can only be accessed in supervisor mode. See Exception vectors, Bombs. Busy light The disk drive light that indicates that it is reading from or writing to a disk. Button A small graphics object in a dialog box, usually containing text, that can be clicked on to perform an operation or to set a parameter. The bordered squares containing the words "OK" or "Cancel" in dialog boxes or alerts are buttons. Byte Typically eight bits in length and usually the smallest unit of access of memory in many computers. B 73 enties EOF