Banked_and_Portable BIOS Banked And Portable

Banked_and_Portable-BIOS Banked_and_Portable-BIOS

User Manual: Banked_and_Portable-BIOS

Open the PDF directly: View PDF PDF.
Page Count: 223 [warning: Documents this large are best viewed by clicking the View PDF Link!]

Banked and Portable
Basic I/O System
(B/P Bios)
Copyright (C )1990-93
by Cameron K. Cotrill and Harold F. Bower
B/P Bios, its documentation and its utility programs are Copyright (C) 1990-92
by Harold F. EkjNer and Cameron W. Cotri11 -All Rights Reserved.
Harold F. Bower 'Cameron W. Cotrill
7914 Redglobe Ct. 2935 Manhattan Ave
Severn, MD 21144-1048 La Crescenta, CA 91214
Both Authors maintain accounts and may be contacted on the Ladera Z-Node, Al
Hawley, SYSOP, at (310) 670-9465. Al Hawley has been gracious in offering
Ladera services as the central repository for the official versions, and
support clearinghouse for the latest B/P Bios support information and utili-
ties.
B/P Ellos is an original work architected by Cameron W. Cotri1l, with support
methodology, routines, and "grunt work" by Harold F. Bower.
This manual was edited on several B-bit machines using the operating system
described herein with both ZOE and WordStar 4.0. It was formatted using
WordStar 7.0 on a386 clone and printed on an Epson LQ-570 printer.
Trademarks: Little Board, Ampro Computers; Z80, ZIBO, Z280, Zilog; DDT, CP/M,
Digital Research Inc.; ZCPR3, ZCPR33, ZRDOS, ZDH, Alpha Systems; WordStar,
NewWord, MicroPro Int'l; Dbase II, Ashton-Tate; BackGrounder ii, DateStamper,
P1u*Perfect Systems; DosDisk, Z3PLUS, Bridger Mitchell; Turborom, Advent;
NSC800, National Semiconductor; SEsü30, MicroMint; HD64180, Hitachi; XBIOS,
Malcom Kemp; ZS1X)S, ZOCOS, ZDS, Harold F. Bower -Cameron W. Cotrill -Carson
Wilson.
Acknowledgements: Many thanks to the testers of preliminary versions of B/P
Bios for their faith, feedback and suggestions. These hearty souls include;
Paul Chid1ey, designer of the YASBEC, Ian Cottre11, jim Thale, and Larry Moore
who all participated in banked testing of the YASBEC Version; and Terry Hazen,
designer of the MDISK memory expansion board for the Ampro Little Board who
validated B/P Bios on that platform.
Warranty: While this product was produced with the best efforts of the au-
thors, we cannot certify it as suitable for any specific task to which you may
subject it. The authors will make reasonable efforts to correct deficiencies
when notified of them, within the constraints of fiscal prudence. Since this
product is being distributed in source code form specifically so that users
may modify and tailor your computer system, the authors cannot be held liable
for any data loss or inconvenience due to user's alteration of the distributed
systems. In the spirit of the Z-System community, the authors are willing, as
this project attests, to share knowledge of systems, and help others learn
about operating systems by working with them in detail.
TABLE OF OCNTENTS
1.Introduction 1
1.1 About Thi sManual 1
1.2 Notational Conventions 2
1.3 What is B/P Bios'? .2
1.3 The History of B,/P Ellos ......., ...... 3
2. Features of B/P Bios 4
2. 1Character IO 4
2.2 Mass Storage IQ 4
2.3 Clock Suppm"t for Time anci Date 5
2.4 Banked Memcry Support 5
2. 5Other Features 6
3. Tailoring aEi/P Bicis 7
3. 1Theory of Operat ion 7
3. 2B/P Bios "lies 1'3
3.3 B/P Bios O[jtiorg 11
3AC.onfiguraticn Considerations. 1·'
4. Installing aEi,/D 310£ 1E
4. 1Boot TracL.: IY}st: i?]atic}r"i 7 7
4.2' Ncn E3a'ú"eZ >czge 7ns"a¡2atic'") 1"
4. 3E,anke: j Elos. t\'c)r'-bankea S.Yster hzstal iatzon 2í'
4.i; f'g]i',/ E'a"'7"M írrag: insta1iatiol-l 2'
4. 5 1'"\ Case o" 7l"jt1eTs Z: Z
E) .P'rclgra"kylil}g tot" B,/p EÍ1cjs 2E
''> t:
5. iE7cg JLRTGi TafÁe L. -.
5. 2EJoe Data St'wctures 4E
5.2 .1CclnfigUraTiQn Area 41:
5.2 .Z t)'sf Pa!"a¶!ete?" Heac'u" EC'
5. 2.3 E)ist. Pa!"aTíete" E"'Cr1. 5.E'
5. 3Sy-ster Ura Sti"uctu"es 5¿
"P .C) .1jjj\/¿ ronrncnt i'e2F.: "'iptc'!" iii-
E.j: .:'TermMa7 CaoaiS? ties tí'
m.
t?. 8,/p' E7cg- 'Jt77]í?eá" e.
C.Í B"J",!j: L:í -SjÁjtéÉ íma;;e P.ci1din'g Uti":ity f,¿
E.1 .' U3il)e BpB.ji: LT, fL-
G.1.2Me: ',t Scmee'z ?etai7s 6l-
6. 2 EPCNFG -Configuration Utility fj¿;
6. 2.1 UsinC E3PCN7G f38
6.2. 2Me"iu Screen Details 6F:
6.3 BPIJ3JG -B/P Bios Debug Utility 77
6.3.1 Usi ng EPDBUG "7
6. 3.2 EIPDB'JG Commands. 7E
6.4 EPFORMAT -Floppy Disk Format Utility 83
6.4. 1Us7nC EPFORMAT 83
6.4. 2Cor\fiCuratic}n 84
6.4. 3 BP"OFNAT Erro" Messages 85
6. 5BPS\'/Ap -Lcgica1 Dísk Swap Utility u
i3. 5. 1LEi no ElPSv'iA,7' 137
6. 5. 2BPS\í'A7 F'-!-os Messa?es EíZí
e.. L) BdS'{.SG"N -Syznem Ger)el"a: ic)n Utility 89
6.6.1 Using CP3YSGE\i £9
6. 6.2 8PSYSGEN Error Messages 9Z'
6. 7 COPY -Generic File Copy UtiVty
6.7 .? Usi ng COPY g;
6. 7.2 COPY' Options 93
6.8 EMULATE -A7ien Disk Emulation Utility .......................... 96
6.13.1 Using EMULATE 9t
6.8.2 EMULATE Error Messages 97
6. 9HDBOOT -Hard Drive Boot Utility 92
6.9.2 Using HDBCÜT 98
6.9. 3HDBeT Error Messá¢és ,98
6. 1lj HDIAG -Hard Disk Format/Oiagnostic Utility ..... ... .... ... ... .. 1C)Q
6. 10.1 Using HDIAG 1CjC/
6. 1G .2 HDIAGi Error MessaCes 102
6. 11 INIRAMIJ -RAM Disl, Initializaticn Uti1jty' 1C.C
6. 11 .1 UsinC IN!RAB£. 1ól
6. 11 .2Command Line '4.:Re 1QL
6. 11.3!NIRAS!3 Eu"c)1" Messacma 1Ú5
li. 12 INIT3IF: -P2Fas státñ;j l!,jtia]1zatio:nUtility 1CJE-
li. 12.1 LE.7RC !N!TGCF 1Ot3
€j. 1 2. 2 Il'·¿: TDIE Eu"o" Yessages :¿";j
'i. 13!RS"ALU' -Bc>: tTrac¢: SuDpc/rt L'tÉiity 1 GE
5. 13. 1Using 7N8.TAL1Z' ltjl:
6. 13. 2!NS"F,L 1 "' El"r"Cr MeEsages 11 ",
6.1 tí !C'P!?íjT -:c' p^2qe: e" :'"'"i""' jIá"7o'"", uuíit ·' ''l
6. 14.1 Using IC)P!?x':T ^'4
6.i 4 ,Z!(";3lhgT" Eu'"c,'" Meq'4ac±: :1 G
m
6. 15 LOS'y'S -S'·"^"¿' [r'",ag pÚe Loa: -ici"" '1S
6.15.1Li'u r.g l.'jj>: ": 1 1 "4
íÁ 1". .Z' LDSY8 Et"ro: _yeEsa?ez". j1 E
e.. 1ti M'3'YbSY£- -E.oíut Track Systerr L'ti it j' 117
e. 16.1 Using MQVXSy'S "17
6. 16. 2MOVXSYS Errcn" Messaqee. "t"
5. 177AFK -Hzv"d T)!"7ve Heaci p.at"l-, Grility 11 ?
6. 17. 1Usi rig PAF? 113
6. 17.i? pÁFf' Error" Message"} 11E'
6. 1E3 SETC1C"' -Recj-Ume C}CFCl Ser L'tility 1
6. j¿'. 1Umtig SE"CLC)K 12'?
6. 18. ZSÉTCLCY Ej"ros Messages 1 21
t. 19 SHOW9£' -Partition Display Utility 123
6. 19.i Usi rig SHOWHD ?23
6. 19.2 SHOWHD Error Messages 123
6.20 SPINUP -Ha!"d Disk Motor Control Utility .............. .. .. ..... 124
6. 20.1 Using SPINU" 124
6. 20. 2SPINUP Error Messges 12'5
6. 21 TDD -SmartWarch Support Uti lity 12C'
6. 21 .1 Uzing T9E) 125
6.21.2 Confi9Urine TDD 127
6. 21 .3 TDD Error Messages 1:27
6.22 zscu: z-ZSDC)S2 Configu'"aticr Utí ?ity 121·
6.22 .1Ir'ter"acti4'e Use 1Z"
c', ,"' ",7 CC)mri7Z'"{' J"")Éj l' Ebpe'"t Yode ') Üs= ' ¿'"i
6. 2Z .3 Option Oesc:rijjticns. 1y
6. 22 .íl Error Me3sagEs 138
6. 23 ZX3 -File Lister Uti'ity for ZSDOSZ 139
6. 23.1 Usiñ¢ ZXF' 13S
6.23.2 ZXb Cptiüns 13£'
6.23.3 Customizing ZXD 142
7. ZSUJS Version 2143
E). ZCPR Versicn 4144
Glossary 145
Annotatec Bib? iograpiy 148
Appendix 1-BIOS Functiorí Reference 15F'
Appencñ x2ZSCOS Funct:cn Reference 1"3
Appencñx 3-Dates?ec arÍcj File Stamp Formats 1SE
Index 15'i'
Notes 15£'
B/P BIOS !NTRODUCT!ON
1.0 Introduction.
The Banked and Portable (B/P) Basic I/O System (BIOS) is an effort to stan-
dardize many of the logical to physical mapping mechanisms on Microcomputers
running Z-Systems with ZSDOS. In expanding the capabilities of such systems.
it became apparent that standard BíOSes do not contain the functionality
necessary, adequate standardizat ion in extended BIOS calls, nor an interna!
structure to fully support external determination of system parameters. B,/P
Ellos provides amethod of achievin,sz these goals, while also possessing the
flexibility to operate on a wide range of hardware systems with amuch smaller
level of systems pI"ograníming than previously required.
1.1 About This Manual.
Documentation on B/F' Filos consists of this manual plus the latest ac'deí]duRl ní)
the diz,trihution disk in the file README.2ND. This manual is di\"icI€¿d int(? thc
foliowinct sections-n
<—
oThe Features of B/P Bios sunímm"izes the significant features of !3,'í"
Bios in genL'l'(íl .highl ighting advantaµes and the fe'n litnitaticms
]ntlíe xystt'm.
c) Tailoring B/P Bios con'.aim C!t-'tái ts on altc"ring the mny cl'tiL2ní, 1Áj
b'erle-l"¿"2tt ,i c"L!: -to¡l}jz¿'d .p1"l file' tai¡(: )I"c'¿! tu \"c)u1" M"SLí·!ü.
¥
c.' Installing aB/P Bibs :
ieí¿iiis í!í·::' in:jnülaticm of E/F' BiQ"b iii b._: íi_i
[?'/)¿-i.'/,I¿,.' 3i1"lÜ /J(i,','i.L(i a'onf ifw"tít io:"í.s in a"how to" faslúm.
t' Programming for B/P Bios describes the interfacus. c!atü su'uc'tcí"c'
anü I"ec'L7ní||íL!rí(.]e¿í !)r¿)gl"aBLming pract ices to insure the Hi¿'íí 1rmm
í/t'ñcfií arx-i pcrforniani'c frc"m svstenis with B/P 13io.": .
{' The B/P Bio.s Utilities cies,ci"iMs the rurr)Qj!t'. operation. anci cu'acz: .-
izat 1oi) c:fal! supj"'; led lil/F' Hio:-, t:tÁitiéf,, ancí support I"(-jU[irlL's.
(_) Appendices ",i'hich su¿)lnta: "izt' rarious technical informat ion.
() Aglossary dc'finiñf" many technical terms used in this Manual.
c) An index of key words and phrases used in this Manual.
Far thost- r.c: tinterested in the technical details. or who want to bring th'-'
systeií. up \íittí ¿j pre-configurec! version as quickly as possible, Section 'l.
Installing aB/P Bios. \.\"j}j lead you through the installation steps needed to
pcrforríí the fina! tailoring to your specific computer. Other chapters co\"t-]"
details of the individual software modules comprising the B/P Bios, and spe-
cifics on the utilities prorided to ease you use of this product.
1
INTRODUCTION B/P BIOS
1.2 Notational Conventions
Various shorthand terms and notat ions are used throughout this manual .Terms
are listed in the Glossary at the end of this manual.
Though the symbols seem cryptic at first, they are aconsistent way of briefly
summariz ing program syntax .Once you learn to read thew you can tell at a
glance how to enter even the most complicated commands.
Several special symbols are used in program syntax descript ions .Fly conven-
tion, square brackets (ljl indicate opt ional command line items. You may or
may not include items shown between brackets in your command, but if you do
not, programs usually substitute adefault value of their own. If items
between brackets are used in acommand, all other items between the brackets
must also be used, unless these items are themselves bracketed.
All of the support utilities dereloped to support the B/F' Bios system contain
built-in help screens which use the above com"entions to display heipfvl
syntax suriirüaries. Help isalways invoked by fol lowing the command with two
slashes l//l. 5(-) for exaniple ,
ZXD //
invokes help for ZXJJ. the ZSDOS extended directory program. Interactive' ZSDOS
progranís such as B!'C\"FG2 also contain more detai ieci help messages which appear
as a session progres»es.
Many ut ilit les may be inroked f'roní the command line with options whi ch conimanci
the programs to behave irí ,5light ly different ways. By convent ion, opt ions air-
given after other coinmand panimctei"s. For example, the Poption in the con-
niancí
ZXD 'C* P
causes the' 2ÑJ) directory utility to list all files l*.*) and send its output
to the printer (pj. For conrenience. asingle slash character (/1 can often
be used in place üf leading paranieters to signify that the rest of the cowñiañd
line consists of option characters. Therefore, the command
ZXD Ip
is identical in meaning to the previous exaníple (see 6.23 for more on ZXI)).
1.3 What is B/P Bios?
B/P Bios is aset of software subroutines which directly control the chips and
other hardware in your computer and present astandard software interface to
the OpeI"atin? System such as our ZSDOS/ZDDOS, Echelon's ZRDOS, or even Digital
Research' sCP/3'l 2. 2. These routines comply with the CP/M 2.2 standards for a
Basic ID System (BIOS) v\ ith many extensions; sortie based orí CP/Jl 3.:c{aka CP/: \:
2
B/P BIOS lNTRODUCTION
Plus j. and others developed to provide necessary capabilities of modern soft-
ware .When properly coded. the modules comprising aB/P Bios perform with a!!
the standard support utilitiem nearly ali Z-System utilities. and most ap¡"'li-
cation programs without alteration.
The ability to operate Banked. Non-banked and Boot System versions of the Bios
with asingle sui te of sof tware. across anumber of different hardware ma-
chines, plus the maximization of Transient Program Area for application pro-
grams in banked systems are features which are offered by no other system of
which we are aware.
1.3 The History of B/P Bios.
Our earl lei" work developing ZSDOS convinced us that we needed to attack thc
machine-dependent software in Z80-compat ible cornputers and develop soníe stan-
dard enhancements in ordcr to exercise the ful! potent ial of our machinúís .
Thi sijre]Tji >1-· is even more true today wi th large Hard Disks (o\'é1" lOó 31epa-
Mtes )be insz \'él"\" common, needs for large RAM Di" ií'es, and an ever shr ink iníi
Trans lent Program Area. Attempts to gain flexibility with normal operat ing
systenis m-'re constrained by the' 64k addressable memory range in Z80-conípat ihlc
systeíisc and forced frequent operat ing systetn changes exempt if led by \"ZCCN anti
¿'ZBI.ITZ whe re di ft'erent operat ing conf igurat ions could be gu ickly changed u)
accornmocjaíe appí ic'at ion program needs.
In the níid to late 19>1)' u, several efforts had been made to bank port ions of
CP/Y 2. 2"ty¡'e"' systt'ni: -.. ÑIIÜS was abanked Bios for only the H[)("}jiS{')-!)ast.: c:
\Qicro!'fint ,sB-l8ñ fami ly. \'\í"íi }(-' it displayed an eícetlent and flexihle' intci"-
fact" and the ahí lity to opt'i'ate with avariety of" peripherals, it haci several
gu irk'-i ancl rmt iceabl ydegraded the computer períbrnianc'e. Abanked Fiicw \..i$
aIso !j1"o(|uc'c'í"Í fot' the xi-v-im sing le board S- lOó computer, but required spú-
c:iai \'c'!": 4i()]16 of ni,-my Z-Syste[lí utilities. and uas riot produced iri any mµ': ííf :-
cant quantity. Other sginofí'm such ax the Epsor] portable. attempted ban!nn;í'
cjí the- T2io<. hut níüxt t'ai led to achieve our cQrrlprehensi\"e goals of conípat ibi i-
it\' viitlá the' e>: htin;-' sMt'n'ai"e bast', high performance. and portability.
In jgüy. Cmii (lL3\"el(jp€'{_i the first prototype of B/P Bios in aNon-banked mock or:
his TeleTe-k v,hi ltz Hííl concentrated orí extending ZSDOS and the Command í'roces.-
so!". As of niicl-l992, B/P BIos has been installed on:
YASBEC -ZIBO CPU, FDi7"2 FDC. DP8490 SCSI, 1MB RAM
Ampro LB W/MDISK -Z80 CPL', FD1770 FDC, MDISK IMB RAM
MicroMint SB-18Q -HD64180 CPL', SMS9266 FDC, 256KB RAM
Compu/Time S-1Oó -Z80 CPL", FD1795 FDC, lMB RAM
Te1ete¢t -ZSO CPU, NEC76S FDC. 64KB RAM
3
FEATURES B/P BIOS
2Features of B/P Bios.
B/P BIOS is designed to be completely compatible with the CP/M 2.2 standards
for aBasic lO System. as well as to provide rnany extensions needed for banked
memory which is becomin? so prevalent with newer systems and processors.
Additionally. strict codinsz standards used in the various modules forming the
G—-
BIOS ease interface problems with applicat ions programs and provide a rnore
robust framework for future deve lopment .The extensions added to the basic
CP/M 2.2 foundation include many elements from Digital Research's CP/l"t 3(aka
CP/M PIus), but in a níore Kgicallv consistent manner. Also included in
-
banked versions are provisions for managing up to 8MB of extended memory for
banked appl icat ions, RAM Drives and potent ially mult itasking in future ver-
sions .To provide insight into the methodology used, let us now examine some
of the features in a?eneric B/P Bios.
2.1 Character lO.
As defined by Digital Research in their CP/M 2.2 standards, character j(j
consisted of loµica1 derices referred to as TTY, CRT. UCJ, COX. etc. Fl/P Hlos
extends and mmeral izes these interfaces using the IOBYTL to definú tour
~'
physical de\'jc-eb cal led COMl, CCMZ. PIÓ and NL"L. The first two. CC.')!! anc
CO?42. are serial porU: PTO is aParallel port, while NL'L i-s a"b]t-buckL't"
which can be i"ep1acr"d by acustomized driver, or used in lieu of ím actual
devi ce .Digi tal Rest-arch provided only alimited interface capabi lity tcj tlit-
charac't er devi ces in ('P/: \| 2.2 .consist in? of aConsoK ( CON ).an auxiliary
Input and Out!")ut (RPR/PCC), and aPrinter (LST). The ability to sen.sc' !npuz
and Output Status with these' derices was extremely limited and was enhanced in
CP/Jf 3.These enhanced capahi i it les are completely incorporated into B/P i!iic+
\4ith the addition of strict register usage so that only relerant registerú ilk!}"
be altered in the respectií"e routines. By rnanipulat ing the IOB\"TL ,any of íht-'
four physical derices may be used in the three logical cít\"ices of CC)µ: xo}e.
mt: xi liary. and Printer {I-ST) .
ÁísQ featured in B/P }3i()q are níodificat ions of CP/N 3function±. to init líj 17c
(or re-initialize) al lCié\_icés and parameters, and return the addresx of a
t:ible which contains nan"m"s and parameters of the def ined character de\"icL'>.
\\"hile ñol totally compatible with CP/M 3equivalents, these functions are
consistent with the spirit and functionality needed with this advanced systei"ú.
Included in the device table are; flags defining whether the device is capable
of Input. Output or Both, Data rates for serial devices {Maximum and Set l,
Serial data format where appl icable. and Handshaking níethod (CTS/RTS, XON/XOFF
or None), as \\"éi las Input and Output Data masks for stripping unneeded bit>
from characters during 10.
2.2 Mass Storage lO.
All versions of Digital Research's CP/M BlOSes define only ageneric 1)isk
driver with implementations of Floppy, Hard, RA3Í and Tape drives left to thc
user or cle\"eloij¿^]". In FI/F BIos, we went several steps further to easn-' {T'lar]\"
4
B/P BIOS FEATURES
problems. First. we retained ali standard CP/M 2.2 functions and pa.rarñeters.
added CP/M 3features for returning the Disk Parameter Header (DPH) table
address, and flushing of the software deblocking code segment, and added ane\\
vector to the BIOS jump table to provide astandard method of directly ad-
dressing low-level cjé\"icé functions. Severa! standard low-level Floppy Disk
functions are supported and used by the standard utilities, including afunc-
tion to return the type of Disk Controller in use which permitz asingle
support utility to adapt to awide variety of hardware platforms. In alike
manner, low-level functions are provided for SCSI/SASI Hard Disk drives, and
provisions for RAM Disk drives in the event special hardware is implemented.
The methods used to implement these access mechanisms niay be logically extend-
ed to handle Tape Drives or Network Interfaces.
2.3 Clock Support for Time and Date.
Many Hardvüare venckrs hare added provisions for Time and Date as non-stancl¿1}"c!
extensions to CP/?vl 2.2 BlOSes, and wore have incorporated such support into
CPÑ 3BlOSes. \4e opted to define the CP/M 3clock vector as a ZSDOS-standaríi
clock builciiñ€ on our l)re\'ic)us Operating Systeríi work. This entry point into
the Bios completely complies \Á'itfí our ZSDOS standards and can con: pletely
replace the separatt: clock cirirer when used with ZSDOS. For systetiís capahk
of I"eFurniIU tenth$-of-M'ccj!!d>. such as the YASBEC and SB-l80. the stand.u-cl
ha> been enhance'cl tCj sul)r)cjI"t this capability as well.
2.4 Banked Memory Support.
\\'hi le Digital F'c'searc'h acicitú banked uteiííory support to their CP/Jl 3. It '.\"ás
amanner inc'gíílÉ)ati}/}e v,i tk F,io-t> intéríacc-· standards defined fo'j eiírliei" GP/lC
stanc!m"d>. The !Ílethc3(j used in B/P Bios is compliant with CF'/3! 2.2 iíj direct
accessing oí" Bios functions v\ ith cmly one riiinor exception wheií us'iiñf the'
Banked ZS2)OS2. and coma iñf uüíny the CI-'/M 3extens ions added íc: i" t?a7]R·¿-!
[}iellí()ry suppcn"t .\\'i íh SOIhG- being modified to be consistent with standards
adopted í"': n" Z-.Sy.rtern s()f't',\'arL-. Ihe excepticm to CP/M 2.2 accesses OCCUl'k v\"i"íc'rí
the Operat inj' Sysíwií can acce: sx certain buffers in the Systeflí l'4emciry Eiarí!:.
with ZSM': -, :.AI locat ion Fit E3uffers (AI-\"), Check Buffers (CS\"). and tht-' Di ti.:
Host Puffer are' al lcontaincÑ in the Systeni Bank and not directly acce.q>ib!€
fi"oní Trans lent Progranis .To compensate for this, we have added acommand
ZSDC'S 2 to return the free space on disks (the most common reason for acces>-
ing these buffers) and tal iored sereral utilit les to adapt to banked and non-
banked systems.
In additicui Iq the priníitires initiated br Digital Research. we added func-
tions to directly access Words and Bytes in extended banks of memorm Directlr
-
accessing software routines contained in alternate memory banks, and properly
mana?ing the systeni when errors occur. These features wake B/F' Bios much rnort
robust and resi lient than other products. These features are implemented by
methods transparent to the system utilit les so that the sanie functions art-'
aval lab :eiii bot hbankt'd ancl non-banked vers ions .
5
FEATURES B/"P BIOS
2.5 Other Features.
B/P Bios contains astandardized iderit ification method which may he used to
determine the hardware on which the software is operating. This ai lows appli-
cations to "adapt" to the environment in a wanner similar to that used in ti"íg
rest of the Z-System community. It also minimizes system "crashes" by execut-
ing programs which assume certain hardware features which may be detrimental
if executed on other system:s. The effects of identification of physical
system pararríeters is most readily noticed by virtue of asingle suite of
support programs performing low-level funct ions such as format ting and diag-
nostics which function across widely differing hardware platform. Portabili-
ty on this scale can rarely be seen in other computer systems.
The ZCPR 3.4 Environment with extensions is mandatory in aB/P Bios system.
Beginning with the addition of System Segment address and size information for
CPR, DOS and BIOS which wei"ú added in the ZCPR 3.4 Em"ironwerít. B/P Bios also
acids aResident User Space which may be used to locate unique rout ines fat"
custom app! ication.s in artianner similar to, but more consistent than X'Z-("'("): ..l.
An Em"ironment \'ersiorí nunibt'r of 90H identifies the Z3 Environment as, bein,"
conipliant with H/P deíinitionsn
In Banked systenm application progran1b may also be placed in alternate ñit'nícu"y
banks using Iocat ion and sizing inforniat ion contained at standard pQsitiorí"Y
\Üüjiñ tht-' Hios Header Structure. This ieature permits significantly greater
funct ional tty without sacrificing precious Transient Program Area. while t!íc"
scheme' employed in thc initial distribut ion is subject to minor aciju"j:nient> ajj
tht banked 7S!JOS2 l-)ec()r!|e> nmrt- fii"ni!y dere loped. experinientat ion and 5L|2qL-"q-
tioñx into thi:s1"(j:;zinÍ aire encouraged.
6
B/P BIOS TAILORING
3. Tailoring aB/P Bias.
To customize aB/P i3ios for t"Oúl" use, or adapt it to anew hardware set, you
will need an editor and an ansembler capable of producing standard Microsoft
Relocatable files. Systems using the Hitachi HD64180 or Zilog Zi80 must be
assembled with either ZMAC or SLR180 which recognize the extended mnemonic
set, or with aZ80 assembler and MACRO file which permits assembly of the
extended instructions. For 280 and compatible processors, suitable assemblers
inc lude ZMAC' and Z80ASM. For any assembler. failure to produce standal"ct
Microsoft Relocatable code will preclude the ability of our Standard utilities
to properly install B/P Bios systems.
3.1 Theory of Operation.
In order to understand the need for, and principles behind B/F' ÉiiQs. you niu>t
understand the way in which CP/M 2.2, as níodified by the Z-System ust,s tht-'
available níenmry address space of aZ80 niicroprocessor. For standard \'ersiol?w
of CP/Kl and compat ible systenís. the only absolute memory addresses are con-
tained in the Base Page which is the range of Oto IOOH. All addresses above-
this point are rariaMe lu"ithin certain liníits). User proEraTns are normal ly
run fr(jnl the Transient Program Area (TPA) which is the remaining space aftcr
al JOµeraí ing 9'ystern components have been allocated. The follow"inµ depicts
the' a".sigñt-"d areru pictcu"ial ly alon,z with sonic common elements assigneci u.'
eac'h iríemry area:
7FFFF', ,
)Z-Sytren" BufÍers ENV, TQ4P, lOP, FCP, RCS"
t
i
)Bicis Code "ÁLV, CSV, Sector BúÍíe' 8
L
)Operating System CP/M 2. 2, ZRíX)S, ZSDOS1
{
Command Processor CCP, ZCPR3. x
(
i
tTransze: it
Program )
)
Area
O1OOH
Base Page IOBYTE, jmp WEI, jmp Dos, FCB, Buffer
0OC)ÓH i
As more and more funct ionality was added to the Z-System Buffers. bigger
drives were added usinµ wore AL\" space, anci addit ionai funct ionality was added
to Bio.s code in recent systems. the available TPA space has become increasing-
ly scarce'.
B/P Bios attacks this prohleni at the source in amanner which is easily adaj"'t-
able to different hardware pIatfornis. It uses addit ional memory for more than
the' tradit ionai rcMz of' simple RAY Disks. it moves much of the added overhead
7
TAILORING B/P BIOS
to alternate rríeniory banks. The generic scheme appears pictorially as:
FFFFH
BNK1
80OOH
7 7
BNKO BNK2 BNKU BNK3 j
i
OOOOH L_ _ _ jL-j)"ÁNKM" '
TPA SYSTEM USER RAM DISK
As can be seen from the above diagram, mult ipíe banks of memory may be as-
signed to different functional regions of memory, with each 321: bank (except
for the one defined as BNKI) being switched in and out of the lower 32k of the
processor 's memory map. The bank def ined as BNK! is ALWAYS present and is
referred to as the CO/ÜWoñ Bank. This bank holds the portions of the C)peI"atin3
System (Corumanci Processor. Operating System, BIOS, and Z-System tables) which
may be accessed from other areas. and which therefore must always be "risible"
in the processor 's memory. It also contains the code to control the Bant
switching mechanisiñs within the B/P Bios.
To illustrate this functional division. the memory níap of' abasic' Fl/í"' Fiio>
systeni ib divided as:
FFFFH
Z-System Buffers
User Space
'i
Bicis
Operating System
Command Processor 800OH
/Bios Buffers
800OH -Transient -Banked Ellos Part
Banked Dos Part
Program
Banked CCP Part
Area CCP Restoral
O1OOH O1OOH
Base Page Base Page Copy
OOCKJH OOOOH
TPA (BNKO/BNK1 )System Bank (BNK2 )
8
B/P BIOS TAILORING
The B/P Bios banking concept defines a one byte Bank Number permitting up to 8
Megabytes to be direct ¡y control led. Certain assumptions are niacie iri the
numbering scheme. the foremost of which is that BNKO is the lowest physical
RAM bank, B\KI ig the" next incremental RAM bank, with others foiíov\" in incre-
ment ing sequent ial order. Acouple of examples may serve to illustrate this
process. The YASBEC is offered with acouple of options in the Memory Map.
Units with the MEN-I, 2or 3decoder PALs assign the first 128k bytes of
physical memory to the Boot ROM, so BNKO is set to 4(Banks O-3 are the ROY).
The MEM-4 PAL only uses the first 32k (Physical Bank O) for the ROM which
means that BÑKO is assigned to 1, BNK! to 2and so on up to the 1Megabyre
maximum where B\'KM is 31.
The Ampro Little Board equipped with MDISK, on the other hand, completely
removes the Boot ROM from the memory map leaving amaximum of 1MB of contigu-
ous RAM space. In this system BIKO is set to Oand BICKM to 31 of afully
equipped IMB MDISK board.
The region beginning after EAKJ i:sreferred to as the Systetn bank. It bé;,'iris
at the bank nuníber assigned to B!ÑK2 and ends at the bank number ininiediately
before that assigned to the Ljse'1" Bank, B\K1-" if present. or I3NK3 if no (Jser
Bank area is defined.
If' presúnt .one or i)"kjl"C 32!: banks of meiríorv rnar be defined \\'i th the B:':P:!."
H
equate for uní que' Use i" programs or storage areas .This area begins with tht-'
bank nun1!_)L'r set tO the label and endx at the ban! nuniber immediate ly befort
the B\"K3 labt'i .RCK/ defines ahigh area of physical memory which is Ilioxí
often w>éd ícr" aRAY Disk prcriiding fast temporary workspace in the f(.)rIí} o! a: .
emulated M-sh cíi"i\¿.
B/P Rios cc: "ííains prcñect ion tüechczrljsn1.b in the ÍQ1"lh of software c"hecÉ> fc)
inxure that Cl itica! port ions of the memory niap are enforced. In the cam' of'
\"on-bank.ed systems. acheci- is made to insure that the system size it not m..)
great tí"íat the BIos,, rííag o\"el'\i'1"iLe reserved Z-System areas in higlí n)e'rilc)ry (Fx'!".
ICU', etc i. li al)C)skii)ie Q\"éI"ÍjQ\\ condition is detected, the rnessagc'
++ mem ovf1 ++
\\"iÍÍ be issued when the system is started. In Banked l3ios systeííím this
message v,ill be displayed if the top of the system portions in the SYStem Ban!.
exceeds the 32k bank size. For most systems. this space still permits cii"i\"ésj
of several hundred níepabytes to be accommodated.
Since the Common port ions of the operat ing system components must remain
\."isitj)é to applications, asimi lar check is made to insure that the lowest
address used by the Command Processor is equal to or greater than 800OH. Thi s
factor is checked both in both MO\'xSYS and BPBUILD with either awarning
issued in the case of the former. oí" validity checks on entry in the case O!"
tht latter.
o
4-f
TAILORlNC B/"P BIOS
3.2 B/P Bios Files.
This BIOS is divided into anuniber of files. some of which depend highly on
the specific hardware used on the computer, and soníe of which are generic and
need not be edited to assemble au'orking system. Much use is níade of condi-
tional assembly to tailor the resulting Ellos file to the desired configura-
tion. The Basic file, BPBIO-XX.ZSO, specifies which fijes are used to assem-
ble the Bios image under the direction of an included file, DEF-Xx.LIB. It is
this file which selects features and contains the Hardware-dependent mnemonic
equates. By maintaining the maximum possible code in common modules which
require no a}terations, versions of B/P Bios are relatively easy to convert to
different machines. The independent modules used in the B/P Bios system are:
BCOTRAM. Z80 -(only needed in B(X)T ROM applications)
BCOTROM. Z80 -(only needed in BOOT ROM applicat ions)
BYTEIO. Z80 -Character JO per IOB\"TE usingz IIQ-Xx routines
DEBLOCK. Z80 -Disk Deblocking routines
DPB.LIB -3.5/5.25" Floppy Format Def initions (if AutoSelect )
DPB8.LIB -S"/Hi-Density Floppy Format Definitions (if AutoSeiect )
DPB2 .LIB -Additional Floppy Definitions (optional if Auto.Selec't )
DPBRAM. LIB -Fixed Floppy Format Definitions (if' Not AutoSele'c't)
DPH.LIB -Risk Parametc'r Header Table &" Floppy def inít ions
FLOPPY .Z80 -Floppy Disk High-Level Control
SECTRAN. Z80 -Sector lranslate routines
SELFLP1 .Z80 -Floppy Select routine (ii !\"01 auto select inµi
SELFLP2 .Z80 -Flcjp!"'y Select routine (if" auto seiectiñfú
SELRWD. Z80 -cjíeneUc Read,/'l¥}"ite routincs
Z3BASE.LIB -ZCPP: 1..\ file equ'ite for tm'ironment SétÜñ2b
Other fi lex are ha1"(i\\'ar¿' \"c'rsiQl") dependent te' varyinjz extents. These n]U)c]Ul t: h
requi ring cu>tcmíizat ion for different hardware systeins are fziven naI[íeq which
encl \'ritíí ageneric "-X'." designator to identify specific rersicms. Tailo: rin;,'
these modules ranges f"i"orií biirli)}e pronipí line custoniization to comj"lete 1"l--
urite.v. \'ersiom of F1,/T' Eiios gent-rated to date are identified as:
"-18" -3licrojlint SR-IN (MISO CPU. 9Z6t"' FLK', SP: Sí) SCSji )
"-YS" -YAsFíEt' (zi: CPL", 1""2 FDC, OP: SJ90 SI)
"-AM" -Ampro Litt le board (?.S0 CPL. 1"70 FIX', lPIFl MIJISK)
"-CT" -Con)}ju/TiiI)¿' S-1(K) board set (ZSÜ CPU. 1795 H)(-', lMB Memory)
"-TT" -TeleteÉ: (ZSO CPL', 765 FIX')
Files associated with specific hardware versions or require tailoring are:
BPBIO-XX.Z80 -Basic file, tailored for included file names
CBOOT-XX .Z80 -Cold Boot rout ines ,Sign-on prompt s
DEF-XX.LIB -Equates for option settings, mode, speed, etc'.
DPBHD-XX.LIB -Hard Drive Partition Definitions (optional)
DPBM-XX .LIB -Ram Drive Definition (optional)
DPHHD-XX.LIB -Hard Drive OPEl definitions (optional)
DPHM-XX .LIB -Rani Drive DPt! Definition (optional)
FDC-XX .Z80 -Floppy Disk Lcní'-Lerel interface/driver rout ines
HARD-XX. Z80 -Hai"d Drive Low-7,evel interface/driver rout ines (opt ionai )
10
B/P BIOS TAILORING
IBMV-XX. Z80 -Banking Support Rout ines (if banked)
ICFG-XX .Z80 -Configrration file for speed, Physical Disks, etc
IIO-XX. Z80 -Character IQ definitions and routines
RAMO-XX .Z80 -Ram Drive interface/driver rout ines (opt ional)
TIM-XX. Z80 -Counter/Timer routines and ZSDQS Clock Driver
WBCOT-XX.Z80 -Warm Boot and re-initialization routines
3.3 B/P Blots Options.
The most logical starting point in beginning aconfiguration is to edit the
DEF-XX.LIB file to select your desired options. This file is the basic guide
to choosing the opt ions for your system, and some careful choices here V\"l j !
minimize the Bios size and maximize your functionality. Some of the more
important optionx and abrief description of them are:
MOVCPM -Integrate into M\"CP3'Í "type" loader? If the systení Ib to bt-' in-
tegrated into aMC)\"CP: \! system the Environment descriptor contained in the'
CBOOT routine is always ní(j\"(i'l: iinto position as part of the Cold Start proces>.
If ."iet tCj NO. aCheck. íül ibe mack to see if an Enuironment Descriptor i:-
a! ready loadetL anti tht' i-tic> copy v\'i i]not be loaded if one is present .
NOTE: \'v]íL'ñ ¿isse}Í¿!}í ing aFios f'oj" Boot Track Instal lation (\'|Ú\"(: P\l sct tm YI--: -'t .
many opt ionx are dc' letu.i to conseiu"e space and the Bios \"el"-s>ion Xul7í})t']" ij·.
forct'd tí' ]. l.
BANKED -]x íhi> a})an}¿t-(i FSIUS.',' It' set to YES. the Bank cont rol niociul t'. IPC:i".
is inc juclc",l iii tht asstm,!"i ly. and much of the code is re locatec íj the" S}""íé!l:
bank. \"ott- ihní aHanke-íl >\">tt·ñí CAWOT be placed on the Systeni i'racks. o!"
integrated l!íín li '\lt")\"\"'í-'") i1ll('iy-' .
IBMOVS -Art- Are·ct !nzer-ííanÉ No\-c's possible" II set to YES, direct tI"¿ír"l.s{'cl"
o!' data hetv,e'erí ban!.> i> possible such as with the Zilog Z180/Hitachi (4ñjC'.
If NO. a25()-l'yte transfer buffer is included in high Coih!ikw Menmi'y and Jñ1-€'j-
bank illO\-éS require transíír gf hytes throuµh this buffer.
ZSIX)S2 -AsAeIl"l!:¡e tíji sfor aBanked ZSDOS2 system" If YES. the AL\" and t:s'í',"
bufferb u"i!l be placed in the Systeín bank invisible to normal j'rogranis. Thí '>
has the side effect that niany C:P/j'l programs which perform sizing of fi ieu
(Directory Listers, DATSV\'EEF', MEX, etc) which do not know about this functic-m
will report erroneous sizes. The advantage is that no sacrifice in TPA is
requimd for large Hard [)isks. Set this to NO if you want strict CP/\! 2.2
conípatibility.
FASTWB -Restore the Command Processor from the Systení Bank RAN'.' If Se-"t '.t:
YES, V\'artn Boou will restore the Coníríiand Processor from areserved area in th: -
System RAM ban!: rather than from the boot tracks. For the maximum benefit cjf
B/P FjÍoá. alwaµ> attenípt tQ set this to YES. In systems without exíendec:
mel}"!c)l": \". it MUST be sci io NO.
MHZ -°,£'1 Ec' í'Iccc':>.FQr Speed in closest eren Megahertz (e.g. for a"L2l6 \íj!:
cloc!: i"att'. sí-' z to g).The \"áiút entered here' is used in many systems to
11
TAILORING B/P BIOS
compute Tinting values and/or serial data rate paraiüeuns.
CALCSK -Calculate Diskette Skeuí' Tablet' if NO. aSkeí': table is used Íq!" üac!i
floppy forniat included in the image. Caiculatinµ Skew is generally IYtO1"E-
efficient from asize pérspective, although slightly slower by facíors vchicl'i
are so sníall as to be practicall'v umíea.surable.
-
HAVIOP -Include lOP code into jump table? If the IOPI\'1T routine satisfies
your lOP initialization requirements, you may turn this off by setting to NO
and save alittle space. This typically will be turned off when EeneIating, ¿i
system for MO\'CPjí integration to conserve space.
INRCM -Is the Alternate Bank in ROM': Set to NO for !Cormal Disk-based sys-
tems .Please contact the authors if you need additional information concern-
ing ROV-based system components.
BIOERM -Print BIOS error messages? Set this to YES if you desire direct BIOS
printing of Floppy Disk Error Messages. If you are building aBIOS for placc·-
ment on Boot Tracks. however, you wi li probably not have rooni and must tun":
this off. Set to NO to sinipiy return the norma! Success/Fai! error flag "n'irh
no Message priníout .
FLOPY8 -Inc ltNe ¿j"' /Hi -Dcns ity FI oppy Forniat s'.' Some systems íst$-]¿jj/.
('oli"l¡3u/1"in]é') can handie both S.25" and S" disks. If your hardware supportu the
capahi.lity and yüu want use s" disks as \\'j| as the normal 3.5 and S.ZS"
diskettes. seííinp thi:'to YES will add formats contained in DPF'S.LIH ant!
control logic to tht assembly. Future systeins mar take advantaµe of the
"High-Density" J.S and 5.25" Fioppy Disks which use higher data rates. Thc ir
definitions \íiÁ be contrL)!]ed by this flag as well.
NOTE: If A[: TO,\!- i:>set to NO. this option will probably cause the BIOS U) bt_·
laíger than necessam" since these additional formats mar not be accessible.
. .
MORDPB -Lbc' iimre Flopyr Fíl?8's (in adciit ion to norníal 4-5.25" anti ope ion,-íÉ
S' ):'If YES. the' fj le DPB2 .LIB is included. Many of the forlr|¿?,lb are Ijul"Ülrlie>.
and mav be fil led \4ith anr non-conflict inA forniats \"ou deñre.
NOTE: If AL'T'OSL if set to NO. this option will probably cause the FI1(Rj to bc
larger than necessary since these addit ionai foriuats may not be accessible.
MCRDEV -Include Addit ionaí Character Device Drivers? Is set to YES. user-
defined drivers are added to the Characner IO table, and associated driver
code is assembled. Systems featuring expansion board such as the SB-180 and
YASBEC may now take advantage of additional serial and parallel interfaces
within the basic Bios. Set to NO to limit code to the basic 4drivers.
NOTE: When assembling aBios for Boot Track Installation (MO\'CPk( set to YES),
MORDE\' is overridden to conserve space. and the Bios Version Number is forced
to l.l in the distribution files.
BUFCON -Use type ahead buf fer for the Console? If set to YES. code is added
to create and níanayi atype-ahead buffer for the driver assemblecl as the
12
B/P BIOS TAILORING
console. This device will be controlled by either interrupts (in systems such
as the YASBEC and SB-180 )or background pol !ing (in Ampro and Ccmpu/Tiine ).
This means that characters typed whi le the computer is doing something else
will not be lost, but will be held until requested.
BUFAUX -Use type ahead buffer on Auxiliary Port? As with BL'FCO\' above, set-
ting to YES will add code to create and manage a type ahead buffer for the
auxiliary device. Since the AUX port typically is used for Modem connections.
bufferinsz the input will minimize the loss of characters from the remote end.
AUTOSL -Auto-select floppy formats'! If set to YES, selection of Floppy disks
will use an aígorithni in SELFLP2.Z80 to identify the format of the disk from
the DPB files included (DPB.LIB, optional DPBS.LIB, and optional DPB2.L.IB) a1"ii-:
]q,sz the disk if amatch is found. There must be NO conflicting definitions
included in the various files for this to function properly. See the notes irí
the various files to clarifv the restrictions. If set to NO, the sinszle file
-
DPBRA'J.LIB is included whic.h mav be tailored to contain oñí\' the fixecl forimí
.
or fonrúiís desired per disk drive. This results in the smallest code require-
níent. but least fte.íibiliíy.
RAMDSK -Inc lude code for aRA\!-Disk? If set to YES, any lrie!}jt: )ry abore the
Systeni or i-ber bank may be used for aRAM Drive (default is drire M: )by
includinz the file- F:.4'l|.)-X>:.Z8("j. Parameters to deterniine the size and configu-
-.
rcniori arc also includtd in the files DPH)1-XX.L!B and DPB: ví-XX.I..IE. In systems.
withoat extendecl rmüc"'i"y. m" to conserve space: such as when bui!dinµ as\"µ,tc'n)
for tM boot tracks. this may be disabled by setting to NO.
HARDDSK -Include SgSj Eard ljisk Driver" Set to YES if yoe wish to include'
the ability to access Hard Ask. D:"irts. In afloppy-only S}"Sté!h. aNO entiu"
\\"iii !)iiIlil}!i7e BIOS code.
HDINTS -(Syst élh Depcuídent )In sonic' systems such as the YASBLC. 1r)tc1"rur·l--
di"iren Eard r)is!: ('QT1írc)j ieí"s usin? DJL'\ transfer capabilities may bu used. If
9q'j \i'istj to usc tltA type of" driver specified in the file HARDI-XX.ZXD instead
of the nortua! pol led rout ines included in HARD-XX .ZSO. set this option to
TRUE. In Ilk.Rñ cases. this drirer wi Jl require more Transient Prograit Area
since the Interrupt Handling" routine musí be in Cotnmon Meníory.
CLOCK -Include ZSDOS Clock Driver Code? If set to YES. the vector at
BIOS+4EFI \'\'iit contain aZSDOS-compatib!e clock driver with the physical cod': -'
contained in the TIM-XX.ZSO module. If set to NO, calls to BIOS+4EH return an
error code.
TICTCC -(System Dependent )Use pseudo heartbeat counter'? This feature i"
used in systems such as the Alí}P1"O Little Board and Compu/Tirrie SBCS80 which Ciij
not have an Interrupt scheme to control aReal Time Clock. Insnead. aseries-.
of traps arc included in the code (Character IQ Status polls, Floppy Disk
Status polk) to check for Q\'erflo\\ of al-Second Counter. It is less desir-
able than an Interrupt based system, but suffices when no other method is
a"cailab!e. Set to NO if' not needed.
QSIZE -Size in l'ytc's of type ahead buffers control led by BL: Fcoy arid BUFAI :í.
13
TAILORING B/P BIOS
REFRSH -Act i\"áté Dynaníic F'efresh features of ZI80/HD64!S0 processurs'.' In
sorne computers using these processors such as the YASBEC, refresh is not
needed and merely slows down processing. Set to NO if you do not need this
feature. If your processor uses dvnainic níeniorr, or needs the signal for other
-
purposes (e.g. The SBlSO uses Refresh for Floppy Disk INA), Set this to YES.
Z3 -Include ZCPR init code? Since aZ3 Environment is mandatory in aB/P
Bios (which now "owns" the Em"ironment), this option has little effect.
For assembly of aBanked version of B/P Bios. the identification of various
banks of rríernory must be made so that the var ious syst em component s"know"
where things are located. Refer to Sect ion 3. 1above for adescript ion of'
these areas. The B\IK0 value should be the first bank of RAM in the System
unless other decoding is done. The following equates must be set:
BNKO -First 32k TPA Bank lswitched in/outl
BNK1 -Second 32k TPA Bank (Conímon Bank)
BNK2 -Beginninµ of System Bank (BIOS. DOS. CPR) area
BNKU -Beginning of Bank sequence for User Appl icat ions
BNK3 -Beginning OÍ" Extra Banks If ii"st bank lo use for RAJ'Í Disl:l
BNKM -Maxirüum Bank- ?\"u!ljr)c]" assigned
3.4 Configuration Considerations.
when assembling a\"eI"sioR B/P I3ios fcjí" integration into an IM filc. size
of the result in£ imasze is not wiuch of aconcern. so VOlt need not WO1"l"\" about
-..
niinor issues of size. Fen integration inío asy: stení for loading onto diSkéíte
boot tracks. hoi'i'erer. the lirúitat ion is very real in order to insure that the
cpR/r)os/B]os and Boot Secto: ü:s :' can fit on the reserved S}"Sttl1h tI"ac!g7. Tyj'i -
cal !y. aliníit of slight !y under 4.5k exists for the Bios coníponent .When üjí--
k1O\"CP,'vl flag is set to YES for this type of assembly. vcarnin.gs will be issú't:i
when the iniage exceeds '1352 bytes (the maxiníuiií for systeíuí with 2íjocjt
records). and 44$9 bytes (thzi Ina: ¿ilÍlu[Íí for s\'5telljb with asingle boor rcccrci l.
Achiering these lir!}ith oftc"!l requires disabling many of' the featurem
The first thMµ you should do before assembling the BIOS is ro back up the
entire disk, then c'oj'y only the necessary files onto awork disk for any
edit iñ€. iífter setting the options as desired, edit the hardware definitions
in ICFG-XX.ZSO to reflect the physical characteristics of your floppy and harci
drives. ab well as any other pertinent items. Then edit the logical charac-
terist ics for your Hard and Pam Drives (if any) in DPBHD-Xx.LIB and DPB: i'!-
XX.LIB. If you do not desire arre of the standard floppy formats or want
change them edit DPB.LIB anci/or DPB2.LIB (if using auto selection) oí"
DPBRAY.LIF if you are using fixed floppy formats. Finally edit the DPH files
to place the loµ'ica1 drives where desired in the range A. .P.
Decide whether \"ou want to generate asvstein usiniz the Image file construct
developed in supj-'ort of B/l' Filos (BPBUILD/LDSYS). or for integrat ion on a
floppy disk 's boot tracks. If the latter, you probably will ñcjt be able t'-'
hare all options turned on. For eFaIuI)le. with the MicroKfinr SB-1$(i!. the'
14
B/P BIOS TAILORlNG
fol lowing opt ions niusí be turned off :BA\'KED. ZSDOS2, B1OERJ¢. FLOPYS. yoR!)?U.
BUFAUX and usually either CLOCK or RAMDSK. As an aid to space reduction.
conditional asseníb!y based on the MO\'CPM flag autoníat ical iy inhibits all hut
double-sided Floppy forrtiats from DPB.LIB. If conf igur inp for F!oppy Boot
tracks (MO\."CP)d flacz set to TRUE), awarning will be printed durins: assembú" if
-
the size exceeds thar available for aOne or Two-sector boot record. Us inp
the BPBL'ILD/LDSYS method, you may vary nearl yal l system parameters, even
niakin? different systenis for later dynaniic loading.
If you are using aversion of the B/P Bios already set for your type of com-
puter, you are now ready to assemble, build asystem and execute it. 'The on!r
ren]ainin3 task would be an optional tailoring of the sign on banner in thu
file CBOOT-XX.ZSO and reassembly to a.REL file.
For thttse convertinµ astandard version of the B/P Bios to anew hardware
system. we reccmímend that you begin with aFloppy-only systeni in \"on-8anl í'tl
mode then e.ípanci from there. The easiest way to test out new versions is rc'
use the System lniagí (T3Klí file) tííocíe. then adrance to boot ri"ack instai iaüons
if' that i:-: desired. Enhanc'erüents that can be added after test 177§' pre\_i¿)ug.
\"él"S ions nia;c M1l) add Harci Dr ires .KAY Dr ive ,and finai ly BanÉ: ing.
IS
INSTALLATION B/P BIOS
4installing aB/P Bios.
The Distribution diskette(s) on which B/F' Ellos is furnished are configured for
booting froín the vanilla hardware for the version ordered. A9600 bps serial
terminal is standard, and will al low you to iníníediately bring up a níinimai
non-banked floppy disk system. Due to the variety of different system config-
urat ions and size restrict ions in some versions, only the Floppy Disk Mass
Storage capability can be assured on the initial boot disk. Where space
remained on the boot tracks, limited Hard Drive support is also provided. and
in some configurations, eren RAM Drive support exists.
After booting from either an established system, or the boot tracks of the
distribution disk, format one or more fresh diskettes and copy the distribu-
tion diskette(s) contents iq the backup diskette(s). Copy the boot tracÉ>
frorri the master to the copies usim BPSYSGEN (see 6. 6) .Remove the master
diskettels) for safekeeping and work- only with the copies you just níadc.
Csing the backup diskette with the B/F' utilities on it. execute BPC\TG in thct
Boot Track conf iguration mode {see tn2) .adjustinsz all the options to \"í)ü7"
m
specific operatinp em"irontüent. When you have completed tailoring the sy: 'tem
it is ready í'cr }.)oQtin£! by p]ctcin? the diskette in drive A: and resettin' tht
system
Thí' saniplc' STARTU"'.CO31 íilc' on the distribution dis!: v\"iii autoniatically éjjiA-
ute asequence of in>LructiQr]: >when the system is bocned. It contains \"áriou.s
instructions i\"l}jc'i] further táikzr the .sy'neni and toad pcü"tioñ.'i of the oj: 'erat-
iñf,' systeni uhicP. are LOCi bi,tz to fit on the boot tracks. The default instruc-
tion >equence" is:
LDDS <-- Load the DateStainpe·r style !"ik:
Stamp routine and clock
LDR SYS. RCP, SYS. FCP ,SYS. NOR <-- Lo: ic1 ZCPH 3Er}\'iI"c)n])}ent seµmíernu
for Resident Command Processor.
Flow (.ontrQl Pkg and Named birs
IOPINIT <-- Initialize the ID Processm' I'km
TD S<-- Promj'z for Date and Tiníe. m(l!
Alternatives are to use TDL'
(6.2i) or SETCLOK (Ó.!8)
IF "EX MYTERM. Z3T <-- If the file MYTEN¢.Z3Í does !íO't
ex i.st .. .
TCSELECT MYTERM .Z3T <-- ..select which terminal vou hcü"t,·
creatinp am"TLR'\}.z3'I" file
FI <-- ...end of the IF
LDR MYTERM .Z3T <-- Load the Terminal Ik: finition data
If' you wish to aiteí" any Qt" theqe inicial instructions to, for example, ini-
tialize the RAJ! drirc usinµ IX1KAM!L add File Time Stamp capabilities iq it
with JXITDJK or PUTIJS aricl copr soriíe files there with COPY. these rriay be added
with ALIAS. \.'AL1AS. SALIAS or other compatible files available froríi the ZS\"S-
TIN or ZCPR33 are-aq orí Z-Nodes.
16
B/P BIOS lNSL'iLLATlCN
After the initial systeui is up and runnirí;z from the Default hoot Track syntc'ni.
you ñiaj" expand the opc'rat ion bv penerat in? system for dif'it"rent purpQs\L's in
orcier to µain the' most ad\"a]ita?t" from your system Many typcs Qí" instajiat 1ci!2
are pQÑsit)le. the sinipicst of" which is aNon-hanked systení using only 64k uf
the systems nieinory, ai iof' which is: in prirnarí" memory. Such asystem uses a
normal Cornniaríd Processc)T such as the ZcPk3.x ianii ly, and aNon-Banked Operat-
in£ Systerü such as our ZSIX)S \'ersion i. Non-Banked systems may be instai led
on aDisk's boot Tracks. or created as an Ima?e File for dynaníic ioadinµ usinµ
the !-RS\"S L"tility (see tn!5).
Banked systems MUST hc created with the I3PBLJLI) Utility (see 6.1) and }oaá-·g
with LI)SYS (see (). ISl. The techniques to rnanape different níemory banks to
f"orm acornMete ()pti'rat ing Lm"ironment are rather intricate and are best .5tin-
dice! Huy our utilities. \Íarn" linage fi les may be created and loaded a:-: needíñ
to raí lor 'rour syueni for optimum performance. The fol]owin? .sect ioñ>i dc'-
scribe t!icSc' \"ar!c)Usz typ€'g. of' instal lations in deiai l.
4-.1 Boot 1rae: klnstallatior: .
tu;" !¿'|(_):'",t :jí" tí"".' eu i! t!n3 (}' '"-! ccviinar ible co[!ipU': erH to beszin c-';c"c'-i1 trú- a1'!",¿,
C)pL"]"nT in;" Sy riZú1i. a ;'{C": ',ZI¿t':l ñíilS,E DC" placed on aspecii led' arí'a ¿: l" i'."?l)I"'\ ¿"'i"
li: ird In:"! 1)1" i\"'.- .Ycí TLká l:"\". tht f' i rS[t\\'O CjÍ' tñree t!","tCÉ9'. on tli'-' cIt :':t ¿z :
ie>}Ej"\"[c: fci7" ilr> r?:'!)[:?',íj :C:a:i art' rt'ft'rred L(ü as tlic' "t$Ocj1 'li"acÉ_: .>iri.: :'í' t!"-
Si;'áCt' :P("? cit {":!iz.·¿! l: £'¿';l..-í",'¡: li" r(¿"'F: 7" ictüd. nei tht": racc)n¿r)lt'zc }"s,./j-' PÚo" ño!" ¿.
y
l)aT'i¿: iii" tí:j,,'7/i 'gt..' ',i i) '¿' .}ñ"tC'cz'i. aüCd jrrj C1Q\\'í sYsten t()ü>á '\ l'4'j '\
al'-'nt u: ÜMr-: í'urí"-mr ;;j í.'í U: 'ni' !> li '·n starr tht" cQRj;jL!T¿'r arií 9'.Úí"í'í- :-·í7it
t.'i')L-: ":jZ c!' >\"-' tt: lC. ",L''t;j¿jj ;jt'!" s\"sLei7i", loach-'c! late: "au, r'.üeciec!.
I! \": _'1-; aI"t¿' t'".;j, 'a!'It.'-C¿)!!í iµ"(-?['[: ¢.} \"tñ"Sj if-Yi ES,/P '_SlO: tú:'\"oü: hidr.l"\i¿íT' .\" '.:
il"ú: \" S) in rk" corn :nat-- tc uin' tA fscjot 'l'rac'l: s:¥"µFtel$í trorn tíit' ("ij'sT]"ihUt 1O!"l tji "-,;;' :: !
!'y ¿'-jl"Í,\";f)!' the' ;.>\">,tt.'t.; :-'> {Ée>,c!"ii)A in Sec: tzon 4abm_t- using bi'b\S'.;!': \ i; "'.. -
(.t .{i ".lt" yuz". c:í-ct u.') i-: [jé;-'; o!" cl1f!€'r"ñ'is€! c1jsloRítz€ the Boot Traci: sysíeri. }"{")".:
ñtLí: - i: a"·: 4c'!}:í"F :ciu,; ii,./; i- A:-mjúi"cu se'u 1í19 certain u!" í!ít' eqLmtt'>.F ilZ thi- li: .I --
'u: j.;:' f'j it: t. inst:rc ¿' coí"rect t;jpc of s;µ't) tem. ]"q as2ti'l]ibi£- aFmcn "!"1ácÉ
Sr\"9 ttin,. tÉl'. m'- I'""·tltÍ}l3L"}rt¿: :}I L'L!u;¿TL": :F a:
MOVCPM bt.'? to YES
BANKED Sct to NO
ZSIX)S2 Set Lg) NO
one elenient of l3anÉeci Sy:-:téñ> is available in aBoot Track installation ii
addjti("naj rríenl()!"í" i> a\"ailah!c', and your B/P Bios rout ines support sucn ,t
feature. njsí teature re' loads the Command Processor froto hanked memory in-
stead of b"cmi the Hoot I'rackx of adisk, and 3.enera¡ Iy produces less ccr!í
(takirí>' je,ss space on the boot Tracks) and executes faster. It is set with:
FASTWB Set to YES if desired. NO if Karin hoot from ¿jj-.µ
1:'"
!NSTALLAT!OR E/P !3l(j9
Sorne oÍ' the ieatui"t"s Th(1[ 7t'n¿1'a ! 1\" need u) be tlisab jc-u to SÁXíi'.: ?1 s'.:íi:a )luí"
system are set as:
MCRDPB Set to NO
DPB8 S.t-'t tu NO
MCRDEV Set to NO
When at least these equates and any others you desire to chan?e (sec· sect icm
41 hare bcen made to the component fi Jes of the system a.ssenible your lgpEj!o-x±:
file to aMicroSoft standard KLL. file. This output fije may be used to O\"tjl"-
lay the Ellos portion O! the NO\"XS}'S.(: O:b'l system generation uti!ity (see 6. itf)
furnished u:ith your distribution disk. or an equivalent pro#rani pro\'iáe("í \\'it!!
your computer. MO\'xSYS or its equ iralent (MO\'CPM, MO'v'ZSYS. etc) i>7 aspecial
proprani custonii zed for your parr icuiar hardware containing a) Ithe Operat im"'
System components "n'hich wi iibe placed on the Boot Tracks, along wi th arou-
tMl' tO aítt-'r thi: interníii acicñ"esst: sto correspond to asPeCifitú menio:ru" giu: .
Tlj :\cl'j the nú". !\iút: - you jUst assembl eí"i. exec'uít' iXSI'Ai.i 2(see pr(jcL'duIc: > !ri
tf. Ij: "pee ifvin"" \'Qtif" cor'ípaít r"< }¢o'\""qH\"b or equiva lc'nt prc'm"ai'i: anc! Icu io',', tÍf
P¡"C)lli!"[S- U) (7\"e7"!("Ly tin-" ñé\f !$ics. Once i!CSTM-!± has saved ¿; rekjcata!)}c' or
absolute filc. \"(_jj-l ¿2i"t? rcíi& to create' aboot ciiú: kcontaining the nioa: !'ic':
sy>t élh .
if \,"cm used t'")f· cc)Hj¶i._íntj INSTAL12 i'"' irísíaii sv",teni ".e"nic'í: S) [v") Aj' j'\'"\" 'i} 'Y l" '
ecl'-! 1\"¿". A-: rc pí"'-)?j"aaj. \"úu n'íu 'jt first create an :\b-solüté $yf>[eÍ!i .\!{)(iL) íílc.
Sinct' the fu.nc 'i ion: í iptK! .ion cl' you r ñt",\" prc)f'ra[íi i:: ¡t¡€"jlt l,[Cl rM' o: "i;-'::í.Á
)!Ü'\".\"S\"S c)i" éc: :1',"¿1 !Ú'J'l .Lt: -.t' tñt' nít'l hcÁ e:':p i¿"i :'1- ci !6 \"cjü: qi" j?iÉái (jL)cunl€'nt at ic!"
g('n'3r¿"i?L' ¿j l2ü'",' !'\": -·.[el?l. 'Y'iif; \:("\'"::-·.'}'!1. Ü"1(. corl!líí(il'?: i>:
MOVXSYS nn *<--- ]"c'l"/l¿·icÚ }t\}'i'{Sb> mu \'ot: rU.·l"'.: j;i
í'|\t- !"t- nn i:-, íhe S>l?t oí' tht' y'} :"iúíü {t\";jic¿i} íy 51 iu: amodc'raui· hcml s\-: ',z¿'1!í' .
"!!1: -. ¿¿ A€'f} 4.- tt,' i. !·-. tt\·f prc'zran.. {(i í"ti: a)lí tlit-' iííiagc in r}}errjo¡"\" ¿'QYj not \\'1" itú iz
adiij: t:n--. \"ql! üi,.ij\" rm". u:-'- !ji"$5\'"}·í-: l::\" to write the ñC'\'\' iíH¿""i?c' to the systt.": ;
íraü.-- \"t)¿-;' ;_>1.._:
'. cji.5Éc't;¿. í.tj_) this-. 1)\" ej: cc'jtir7? iiF'SYb,c!Á v\"itij no ar2u{Iíer!t: 7
áfW !:"1suc ¿j m,::jtj !'/i17" :aµ'- ktú'-irn t',bun askc-á for tne routcc' c'i tñ€' !ni¿i,'{ .
It yuu usc'.- the conmiand INSTAL12 /A io install replacement system seµient: _
o\"éj" aSys.tcni lrlia,'?c' li it', or used autility which wrote the new irrtagc' a
di.U: file. use hi'S\"SGí: \to \\'Í"i te the iniatze Tile to the s\"sté¶: tracks of yout-
booi disk. The proper command is
BPSYSGEN filename
u'hti're filename is the naníe of' the disk: íiK you .just ci"eated br e.xecur in;-'
Kí')\Y'j: SYµ qj" equivalent uith outpu: to adisk- file. or mth INSTAL!2 on á!_,
existin? ln1a§!e Í:tlc'.
ii rM systéá": is', rrrinen 1j-7 al-farti bis.!: .and vour .¶y.~[eL|l supportz bootin;z frcvi,
aHard ?.'.i"1 -L'cf"t ¿"t'- the' \,·!Ahix .\"Cfj nL)rn"¡nj iy íríust altc'r the cict'aui tFoci
tectc'r ircúí: t)ít' ci.: 'f á21) l' FU'jY'" j'j '.;¿ í$oí\í Sector cc'nza int-d in !¿í{)',".xb}"yµ o!" eq'_: i',--
19
B/P mos lNSTP'.LLATIOH
alent .Thi sal terat ion is accompi ished by HDBOOT ( see h.Cj) \\'ñj ch must be
custoniizecí to the specific Hardware System used.
t'.ftér the ahcn"e act ions have been completed as appropriate, tal lor the boot
Track f\"Stéñí tO refjecr the desired staTtin? configurations with Bj'C1\'FG (.sec
6. 2j.Such items as the desired Startup file name. Bank Numbers (critical if
FASTWH is used) .and drive types and assipmments are rout inely tal lored at
this point. When the you have finished this step. test your new systení by
resettiruz the s\"stétÍi. or cvcüinp the power and vou should be up and runninrr:
-.... .
4.2 Non-Banked image lnstallation.
ANon-banked systan may be installed as an Ima?e File as opposc'íi to the basic
Boot Track installation covered in 4.1 abore. To create an lmatze Fi le. \"u'.:
4·
must hart' M! or ZP: J- vers ions of aCommand Processor (ZCPR3 .x or equi va }Cu": Z
rec'QRlníen("!€-t.! l.an Operat in; (zsms. z-m-. reconmended j,and aRLL vers icn cR" !./'i '
ijio.s Io? \'üu1" s\"StéEj assembled \\"itii the MOVCPM equate in l)!íi--x.r.l-.!b set to NO.
()[hc'r equare: ': in thi :_> t' i le imy be set as descri bed above" for the" !sócít 'l raci
sysíerú. Sincc ]¡!laµc' flies are riot a3 constrained in si7e as is instai iaticm
for HOCit '! rac! -3 .riíort- ie'aturc's mav szenerai 1\" be' act irateci such as F.rror Me j;-·
..
sa,2ep. ra'g jgl\"é. ac!S ft iona! Fiará ijí"i\'é partí tions, and complete iloppr Formt
sÜitéÁ. ih':'!Ihzjñ yrecat't ion here F3 that larpe Hard Drires \'\'1 li raj"id iy cau: u-·
sipr:i!icant iQS'úr cl" ;J"a.n"',ient í"rQ?}"anl Area since al iDrivü parameters níuút ijt'
in !)t"()tUc[[-: iki;i"ñ ll"tt: [íl:."'i:"L" átxj\"t' the' Fsio>.
Aít C'i U)Ú iíicri, tía". l'écR a"st'n)!'!ec!, an lnia2e t'i le niust be producc:í.TÍi! :"-. ':',.
m
[!c(: L_)IÍil'i íSh·-'u ':!', I!)t' Fí'pg,_!i,',: 'j'íi!iu' (sec t".l). Sct the Fiit" n:íniz' ". in yt'nl: i
u) rt-'i j¿·c to:íly \'L7[?-tÍ?,rLÉ: €'¿i fi ies Icu!" mimníal 1\" baní: ed bicis if l'As'r\ilí is set ¿("7
YES: .iind it-t FiPiú Ill' Clf_) the work. sinc'c' rhe standard Kon-hani:t·'i y\"·>tt·T,.
Aé,2jhCñ{" are ñQ!"ñ"i.": if'.t-'t jy"2 tnc- 'standard" CF',/)i 2.2 sizes. ycrií níar arixwc: '" U!'-
,. autír-, lZé? cjt fjú";." \4"! t:í,"í Yt("- Of'Tá1!i the mamnium I'ranment P]"F)?r[¡[?i .'\;"¿-¿7 1"? íh:-
re"ultin" sysncíi,. 'iben Ej!?fy li.!-' coníp!ett'.s li su'or!: .af'i le. norn"ta jly 'i: iti\ the'
ciefanl tíí'pc CÉ" .j)f: :.\Á"j i! Püí\ c' been placed in the current ly io??e(j br i\'e/'i"-·': :!"
ái"t',: ¿ant 'yuí: art' l"¿'af'.'L" tCj l'¿"rf'ocij? the.' ríe: et step in preparation oÍ' tht-' .\cu:--
han $1t'- ijíva c:
j, ,
:\s \r\ itAt!: t' t5oQt j"racÉ: ins tai I at ion covered aborc .severa! system itenís' ni: .i>u
be raí !o!"ú'cj bef'ürc the jnía,sze may De safely loaded and executed. This is done
L)\" cal !iríj' FÚ?( NFG with the lniape Ílle name as an arg.ument, or speciÍí" In]¿¡: ?[-'
confi?uration f'rox! the interactive menu (see 6.2). Set ali iténjs as yo",'
desire them in the operatin7 svstem, particularly the Bank Numbers (i!" FAST'u-
is active) ,anc! tht' Disk Lfrive characterist ics and assignments. When this Mig
been sar isfactori lv compieteci. \"ou are readv to load and execute the new i\"-
created systeni.
lnstal ling an 1wr!zc- Fi It' (default fi le type of .j)vfg) is extreníelv easiy. (-)ñ !\"
the uti !ity Íj)S\"S.CO)\i (see b. IS) is needed. If' the file type has not becn
chanpeci from the defaul t.USG, only the basic name of' the [rr!a/ze Pi le neecj IjÉ
passed to i.2F.\"S \'\tt'ñ e\"ecu[E: ("! as:
LDSYS IMGFILE <-- Where TMG1·IL,L'. is your Image file ñ-": ñi:-
19
INS1ALLAT!9N B/P EllOS
The operatin7 parameters oí" the currently-executinµ, system an-- first examineú
for suitability oF' loading the Iniape File. It' it is possible to proceed. the
lrriaµ,e Fi le is loaded, placed in the proper memory locat ions. and conmancied tíj
begin execut ion by caí I1!12 the:'f3/P bios Cold Boot Vector. The Cold Boot
(Bios Function O) performs final instal lation, displays any desi:red openinµ
pronipí and transfers control to the Command Processor with any specified
Startup file for use bv aZCPF'."$.X Command Processor F'epiaceriíerit .
Since anon-banked Image Pi le v\'i I! probably closely resemble that contained on
the Boot Tracks. the sanie STAF: TL/7' file may generally De used to complete the
initial tailoring sequence. If adifferent file is desired, the Image File
niay be altered to specify adifferent file using BPCNFG.
4.3 Ban ked Bios, Non-banked System lnstallation.
'jvith the Fil!" Rios s:ystc'm, an linage system may be creattN and ioaíiU v\'ñi CI_l
places port ions Qt' the' LAos only in the Systeni bank, retaining anon-bankeci
Operating' System and therefore níaximum corrípatibi lity with existing app} lCá-
tions software. Afé\'\' thousand bytes can norniai ly be reclaimed for Transient
Pro?raní$ in this níanner, althouµh iarze ancí/or inc'reasin;z numberx of ¡Qgic¿"l}
drives will st t! irt'dti':tTPA space becaütte of' the need to .StQ1"€' AI Jocatic"u',
Vectür iniorníat ion in (_'ohírlíorí tkuíim'y.
Ib prepare súc:h i: >'.y."ñcm mmj"'ly edit the r!t'E'{je(i bios ii le:' neces",st: ";. íi'it!"
particu!ar eIÍ"lphag>i:7- on üíú bí'."-µj: .1.1ií fije wherú tlít: ÍQj io'n'íng tXjLi,7Z£'j, !íiií:." Ikj
set am
MOVCPM Ser tc NO
BANKED set Zd YES
ZSDOS2 >oCt tO NO
sjiñc€ Mznkeel r!¡t?nÍcl: -\" ,\.f¿ '>"' 1)€ a', ¿'i! iÁ/í¢-· jg: j" this, tvpc O! insrai lat unn. you \\"t j'
pí"óbabíy mint tiie i-,i'-,í \irirjt !$;:m? ÍE?&'U.lTé ai"ai iabie to rua>: in::Úe systení pc'rlt"' "-
nianc'c' .10 ac'i l\": ";.It-' this O!: '{]O"l. sc: tthc t"oiío\\"inp equau: 'am
FASTWB Sf-"t to YES
When the editing is conípiete. assemble the Bios to aMicrosoft .RLL file \'\ÁÍ!
an appropriate assetnbít'r such as ZFLJC anci bui id an !nía?e system wiüí HPb't-"ÍL!-}
(set' Ú.l) cnanpirw the bicc-. file nanie in trten'u lto the narííe of the newly
creared Bios file. Next ,cont izure the default condir ions ifnecessarr v\"it íj
BPC'NFG (see (i. 2jand you are ready to act ivate" the new system in the sam'
manner as ail Imac'e fileu by calling LbSj'S with the Image Í"iie ar7urrlent a'n
LDSYS BBSYS <-- where BBSYS is your Image Pi le Name
As with the completely Hon-hanked systerrí described above in Secr ion 4.2. no
ne"i' requirements are establ ished tor aStartup file over that used for íht-
imt ial lÉtzoí Sy>íem since bcith the coníniand Píwcessor and Disk Opei"at !út'
Systeni are unba!"!; eci. an'.i }]c\ ciat area:>needed by app) icaí ion progrz},;': arc
2C)
B/P BIOS !NSTALLAT!O'I
placed in the System bank. As with all Image Files. additional Íeatures' such
as tul lfsios Lrroír Mei': sages. more extensive Floppy i-risk formats an.ci KÁ'\Í drivt-
may generally he included in the System definition prior ío assenibly sincú tht'
size const raints of" Fsoqt Track systenis do not apply.
4.4 Fully Ban ked Image Installation.
To create asysteni takiñfz, rnaxirnum advantape of banked memory, aspecial banked
Operar ing System and Coinmand Processor are needed. These have been furnished
in iríi tiaí form with this packa?e as ZSLXJS20.ZI'L and Z40.ZRL respect ive ¡y.
They use the Banking features of B/P Bios and locate the niaximurú practicahlt'
aníount of executable code and data in the System Bank. Of signif'icar,t iriipor--
tance to níaxilÍíizin3 the Transient Program Area is that the Drive Ai Locat 1()!?
kit niaps are placw7 in the Systeni Bank meaniñfz that adding lar;ze hard Ciñ\'€·"i.
Cij" mujz iple cií"i\_és produce only minimal expansion to the resident pQrtion c:j
tht' F'io;>.
t\. i'uily bar'h-cd fíiüj, iu creatuci hr ec',it im tht: L¢,/i' FriOí-. í"i ié:i, a:-. neech"-ci 1("1
cuÁtQ!!]!7c' tiíi' s\":itéñí 1\) your (!esireg. Insure that the fol lowin.sz i.)t'F-x}: .!-;!5
equa«> sire SiC"" ,zsá
MOVCPM Set to NO
BANKED Sui to YES
ZSljOS2 >,et to YES
:\>,qF·n"lr";ie tl"ít' 1"é"'jj Uá.lil 1-',/'-' !ñCS, tcj a'I'licrog{")i í.Rii. í'i!t:. HuiiÁ ¿jf) lni'i·e íñt-
\', li rj !<r-'i\\"j i.h iggg· l). i,' and CCñ-ti'f ': j"é the prodt'cecl inimc' Íiie vi ith r¢p(".\"i"I.7 fsé/"'
(.) .}í.\üjt-'n \"\.)ü are coni ider.t that ai lcic-t"aui tsettings haí'e beún iÍi,'i"itj". act i-
\"¿-üt tht' tilt 7)\" e!)tÚj"j:!,::
LDSYS FBANKSYS <-- whtu"t· F6A\'F±S\"S ix vour Íl!:&2s ;¡j: ¿' ñÁ!i: ·-
Sit\"t-: 'á !{iij'i'c'í"€'!"!c€'$ my exvO irí the Martup file used Í'q!' aUl!r ban6c': "i
$í"síen,. (.í¢jnt"r¿1 l1\" tht-' tñanµü-s anjc)lln[ to de let 1j12 iterrci such au ¿i lile Stan,;"
llÍ()(lu!t I'c.'i" ihe ?[\")r!-bani¿: (| LSi: '7'sj i','i,i ch is not neces,saiu" v.'i ti"í th-t tui ly-ijaI1!.: L'(:
7.s!K}y. 2an'.l 7dü. On i\" Éij'"' tcpe Cit clock neeti he speci Í"ic·ti tor :(µy!-.l{)g.p£. i- u! -
ÜlC'.'í: p.3! u.1>incí-' th'-' ?Á\.) l. oni:áanci Processor Replacement contains llicjSt COElfMjñ !\"-
ü",€u.i c'onímantA 2athtg1"ccl tj"QIli anuníher ot Resicient (jorriniand PrQc'e'sy.oT 1RC!V
pacÉ:aµ"€:!. .there' i:-rioriíía l¡y no need tc\ load an E'CP. Asiµ.1p}e Startup t"i!t'
found acjec{uar€' durim {jeí"clop!r¡ent o!' rhe fui ly-banked lS/P sysneiü is:
ZSCFG2 CB <-- Set ZSDOS 2clock to iiios+4í'.li
LDR SYS. FCP ,SYS. NOR <-- Load ZCE'R 3Environment sépmént>.
for Flow Conrroi and Naíneci biu
IOPINIT <-- Jnitiaíize the tO l'roces',sor ['k:?
TD S<-- Prorrtpí for bate and 1iríie. Sél (Ik
Alternatives are to use Ti)l..'
(6.2lj or Sí'"l'CLOK (6.lX)
IF"EX MYTERM. Z3T <-- If the f'iie M\'TU<N.Z37 aoes, !cot
exist. . .
TCSELECT MYTERM. Z3T <-- ..select which terriuna! \"qu íjá\"¿
21
INSTALLATION B/P F3lOS
creating a,YYI'F-KMÁ',31 lilt'
FI <-- ...end if the Jl'
LCFI MYTERM. Z3T <-- Load the Terminal t)ef tnition ci,'ita
Since the requ irements. 1'0!" afu! ;y-barIReci systéñí diÍ fer signi ficant fy froni a
non-banked one, we recon}níÚn(j that you use adifferent nanie ior the Startup
fi le .For example, STARTUP.COM is the default name used with Boot Track
systems for ini tial operat ion. and with Non-banked linage Files. whi le S'íAÉ'íii
may be asuitable name for the script to be executed upon loading afully-
banked system The narne of the desired Startup file may be easily altured in
either Boot Track or Tn"taµ,e systems frcm Option Iin BPCK'FG (see 6.2).
option available to start from alarpe Image File is to configure aSíartuo
file for execut ion by the Boot Track system containing, asingle ccmuuand. The'
conimancl would siníply invoke Ll)S\"3 wi th the des ired Banked lrrtage File as an
arguwnnt such as:
LDSYS BANKSYS <-- 'Alic-re Lj.',X"ñ: >\'$. 1}'it.í isi your iñií: sx- ii jí.;
In this case'. no: "ic' the norm iini'tia! izat ion sequences cl ted abm_e' \\'qu id 1')c
executed by thú Mc'n '}"r,"ick sysreúi. ano onl v[hos3e contained in tnt- bb[arEu}' f¿"."
HÉ\">S\'S. :mwoulci u·jczl!". other opt ions áhourN and are felt [(") tm-' conir¡,uT"i it\"
tQ irírenc ñt""A' cL\tíl}-"\Lrj¿í', ions a'iü ,>equc·ncL': ·i.
4.5 in Case Protjierrls!...
\Á'jj :C' \1': · ¿i[tf"'!i!""(""¿ LO cn'tl jr"j l"}!"(."Isc("l'L¡r{."q tu" Tpj,t: zi;"ijíj1 iíy c': 1ñ"j;,j Úíí jt)'l> ·',l
c'3:]s!'j-'re{.i t"éÁc'í'jiíu rnt:iú li,,-.'" i>; L)(-L.¿1: i:¶z)rLs íi"¡])c' yc'u 1!ía(1\"ei"(cíir 1\" 1j.m..:
y(.3I_}rg>¢~: ir' ¿i f'C: >it.t ;"1 "-": "t'!"s' ;:Cñj .5€"t-"hi [O iIÍ1","t: - i OS, iÜ"lc ahN: 'rí" to µ¿'z .\"ql! i"
syvúem u;" t:t!K' lurjilij"!-.'.
PROBLEM: \\l"í.: i(-}¿1¢"]jt).L' an .I"j¿! fiic- u, 1Ú! L1)S\"b. t!ic screc·n cijs't)layµ. tí"\t' 1!': .,>
r)AnnL'l". systt'n". ,"l(l(.: l"Z"7S..¢-'"·-,, íWíC! ñalís: \i'ittí the' iasí screen c}ispjaylr)f: :
.. .ioatiríg bank:c'ci sy,steni .
-- SOLUTION Sonicthirw i" ñCjt sc't correct 1\," in the Fío:-., >,iñc€: Fil j::j"r·:
after the JdSi one Jispim"ed are printcci f'roni tije newly-loaded Hick',. ()ñc"
the" most colnríj(")n causes. toi7 rhis probiéru i:-: incorrecr bank nuníl'er seí E}ñZ'"j.
Use the hidden select ion in Menu iPSPC!GFG (see ím2) to verily íhat the
cot"rect bank numbers hare been set for TF'A and Sj'Ste!Ít banks. Anot her col|Í!í:c}n
cause of this prob itmi ig incorrect se[ting,¶ for the Console port. or asett ing
in the I()BYTF which directs Console data to adevice other than the one- in-
tended. Lse Menu ' hPC.\"FG to properly set the IOBYTE and the console param-
ters.
PROBLEM: You hoot Í1"o!ñ or load aFi/P Bios sysreni t"rom aHard bri'."ú. áñ/ú
imÜ}ediately after starting. the systern attempts to 102 onto Floppy brive (j.
-- SOLUTION: The' most common cause Í"or tb. is syrnprcmi is that the des.i rcci
Harci ijí".i\"¿ and Eia¡"py i'r i\_c- clef lñí t1Qñ$- were' not swappea to ciei'inti- aÍ!á7"g
íh"irt' i'art 'i TJon ¿"j;j t ñc" A: Cil' ]\"t' .t.'St-" íil-"C'j"í.r {Síttte (: '. J!) ,Mem Su) e3: chí'in; -'
22
B/P BIOS INSTALLATICN
drives lo the desired cont iguration. Asimilar situation rriay exist where a
Hard brirc' is activated ininiediately atter booting when aFloppy drive is
desired as the .4: bí'ive'.
PROBLEM: The computer seems to boot satisfactori ly, but after aÍé\\" prograníg,
or any program which executes aWarríí Boot (or entering Control-C), the system
goes into "Never-never Land" and must be reset .
-- SOLUTION :This symptom is most often caused by an inability to access
and load the Command Processor. This is most probably caused by assernbi inµ
B/E' bios with the FA5T\\F, equate in DEF'-XX.LIB set to YES when the systeni
contains no extended memory, or incorrect sett ings of the bank Numbers. To
check bank Number sett inµsm use the hidden function in BPCNFG, Menu l{sé':
6.2).
PROBLEM :when doinpt acold Boot from aHard Drive (from Power up or Reset ),
the systéwi goes to a!'ioppy brire he/"ort" dispiayinp the initial si>: n on mes-
sages: .and remains logged- on tho rloppy.
-- SOLUTION: ii'!"ii> jy most cUren due to your t'orgening to r'-íri the' r!!)!I{K}:
uti lity on the Hard i't"i\'é bont systerti atter appiyinµ it with 131"SYSCd'.Á. Koj"-
l1!AÍ 1\". systetrs c'rti' ttt-: d \\'.iti"i !\t()'\'?: b}"S comain ai'íopyi" l.'isk HOuí secínr v: hic!.
z'.ill load ti"iú init i,_: !')!'¿'}"t'¿r¡1íc' System Iron' ai'íoppy. HL)L\l)(y]' lsét: ó.9l n"¡[}\"¿}-
fies' U7Í>, rc·c(")!"[} Cjf"i aArl!-'c.!: "l€":l fí:-ird tñ"i\'ú Linit sq that the Operating !?\": q[t-'}!i
iu íc)¿¿("jc'zl U"Oñt aiia: "C i.ü"i\"ú. kun H!)Éq'.)OT on t!_: ebesirúd Hard L)1"Í\"c. tht't"'i u'--ú
F).|'(-'xr(". ls.eí' (}. 'Ic) iñÑwc that thz-- l(jµic¿il drives art pos.ir iQ7H't1 a: ck':-irccl
(1Yc-nu 5,' .
PROBLEM: 'smen ijic"Oí .in.- .thti· m"±terú c(jnsolt-' either doesn't dtsptay arly[tí¡Il,g, or
Ig" ml '". ut raní"" rhai'act tjf'" .
-- SOLUTION: Thi".. It. nR)j;L otten CÍU? to incorrect scttin?s; f'ctr thú cur:"erít
Ccvixo ie.rímst rrQ!ja!") :yiñe· 1)(u a.rat u.or C:Clock Frequency. !iocrt i" 1"c)l?! ¿i
9OCM s,\'síe'üi. tht'n usu gP¿'_": G}(r lset· 6.2) to aci just the' sett in?> cm tñí' PTOi:'}Úl!}
sy"> Ct?líi. F'íiy p¿Ártic'jiar attt'ntinn to 31E:n:j !(ci'lj clock katc'l aní \iünu X
(IORYTL. and Scrnil .b'Qr¿ tmra Ratet, j.
PROBLEM: 'Mwn runnin;z aful ly-bankecj system with ZSIJÜS 2. some pro.c-'ra!!"ls, y.L-t-'!!:
to "hanµ' or "lock uj" the systetu on exit.
-- SOLUTION: One of' the most common sources of this svrííptom isi with tñf.
appticat ion pro?rani where the author used code which assumes that the BÍ)X): > and
Conmiancí Processor are OÍ" acertain size, or bear afixed re)at ionshíp to tht'
add!"es'i,4es mpage U. \ou may experience this most often when usin? an IYC
,svs,tení huí it bu arísweriríg it-S to the AutQsizin? query in BPBUILb (see (-i. i).
To coniperísate ior such iil-behaved programs, you may use atwo-step bui td
p'rocesg) as :
i) Lse BPi3Uij-b to create an IM file answering YES to Autosizing on exit.
Tiíis niamrui i'e: mTi'A piac'in; the F'e3ident Bios as hi,zh as possible in meniorv.
-! :' F.:íect"me rrm:-. ii.i' apíi :nv: irh an argument of the name you sza'."e to the iijr
23
!y.sTµ.L.Lp,1"ln!-,' b,/p ElC: S
.lust created ahcn"c'. This loaas the' tiQÍ iriiticm from the lüí ilk'. t[unitíjl¿ití"!\"
emt with aCarriage kc'turn. anci answer :\"c) to Autosi zing. and YES to p!cic'Ln2
svsteni se,míients at standard iocat ions. This procedure keeps tht- bion acicirc->.ú,
constant .but mlIñio\'é tht' start ing acidí"esse's of BIXJS and Co!nllítln(j F'l"Qc'€'4.5(")j"
down. it' poss ibie. to siníulatt' 'standard" tizes usetí in Ci-'/\1 2..:.
9l
B/P BIOS PROGRAMMING
5. Programming for B/P Bios.
For most exi5tinz purposes. ?ro?ramn"tin? for tS/P Mos is no diftcrent thrm !"(/íj
standard CP/l! 2.2 BlOSes. lj"en adapt inµ CP/M 3progu: ams for aB/P Bioü shou id
present no preat hurdle due to the close sirr,iíaritc retained with the corre-
sponding, extended Í'unct ions. The power of al:/P Bios interface. however, is
in usiñ/z the conibined features to produce portable software across awide
variety of hardware piatforrrís by exercising al lof the B/P Bios features in
concert .This sect ion describes the interfaces aval Iable to the programmer of
asystem using the B/P Bios, and the functions available to ease direct floppy
and hard drive accesses for specialized programming in aconsistent manner.
One of the architectural flaws which we considered in CP/M Plus was the ckÍc!
way in which direct BIOS access was handled. We designed B/P Bios to be as-.
corripatible with CP/M 2.2 as possible. yet provide the expanded funct ionai ity
nt'ecíec! in Banked appl icat ions. 'Fo that end, direct interface with BIUS ca]lr
follows CP/Id ?.2 convent ions as much as possible.
Thu fol iov: inz pap'es op prc'=ral!1níin? assuníe somt' t'arí¿-L!iarLt\" with the' bnsic C!-',"'
tuncja!llent?¿! 2,, atz:iv\"i th ZM/Z j8(1 assembly language, since itisbeyond tht'
intent O!" this níanua! ,and cñir literary writ ing skil l,s. to p:exent an a>-"'t"R]i"}} \"
prc): 21"arl"tr!¡in:2 tutÜ]"}ct! .Shou Id you need add it ioriaí assj stance in thi "u art'm
pleasf: re-t er Ll) the annotr: tct bibl iop"aphy ic'r reference' l])¿iEerla.! .
5.1 Bios Jump Table.
Tht" FilOS Junj' íah!t· coasistu 4(' .juinj'.s to various function". 'jY'iííiiñ :'is) 'k)
xn: l [71"(j\_iLles,. t!it' t)(lg1jr: 'funct ionality. Itincludes' the conípit"tc' (--'F'/': \: Z.l
Ñ£"c!L!er)'3t'. ñu"'".E g7j' the CF"/Y 3(aka CP/M Pius. jentry points (al thou;"h muy-:
di!"iú-t" 1!) paraníeter orciemng anct,/ür register uqaµe} .arid ñé\\ entíu" pointx
neecied tu hiznci le hank in;: in ¿i ccüj.gi hTéñt and logica !nianner.
!iio;"> t: ñti"y r""'im g'. c"ün": iÍJu a'i'a!: je of Absolute' í-tj\"té júw: ps: píacect ai. tiit"
bezinniru' t"lj the- executable !ní,: 7-L' .Paraníeters arc" passeti to tht.: piü;-j L!"
L
TeS']stcrs as ñti±CitA Í"\")j" the specific operation. To avoid future' cL)rhr)atibí!'ty
pj"cÜ_/ ien?i?4 ,sc.me Üt' the prounc! iii je: '. for ZsioÁ ccmstz"ucíion inc luge: \?1
a! term 1c)tj cñ" ,\ it€:j"ñátc' or Éncie:': re>"i stt'rs as aresul eOÍ" bios cal Is. aricÉ ¿"j !l
registt"r: ': tisreci in tñt cjÜculrlen"[¿2t ion as bein,sz Presc'r\'eü/'t-'ní2!"!ec[ec! 'rit >"! T)'-
retur]1¿-!.! [ci the cííl finj' prc)?raIl] in their entry stare. í9io.s entry points á"iúA
l - -——-— 7:
t:
li Fur";ctio!"1 C) ( Xx'jÜ )Cold Boot l)
,,l li li
li Enter: Kore' Exit: None. i|
L
i) lExecution resumes at CPR ))
li jl :)
l.
l) Uses: All Registers l
jl li lj
j-\"ec'L'í€ 'ül:i>[¿1¿]"[ inii. ]aii7a[]c)n cm the first execut ioÍá. The juníp ar?unjc·rlt
jy·. l&Ít¿-i" í._"f'._U·s"',í':"11ÍeI7. and púintx [c) tñt" lOt' íjt"\"icé jun"ij' rabh". ?'hc' rea'm'm t'Cjt
2E
PFKRRAMMINS L3,'f' E!!()S
this is that code' [(7 pert'orrn thí: jñit ializat ion is often placed in areas cu
memory wPnch are later used to store systetn intorntat ion a> a memory conserva-
tion measure'. Attempu. to re-execute thc iniriaúzarion code would then
encountc'r data bytes instúad of executabte instructions, and the systení would
niosT assuredl y"crash" .
Among other functions performed durinp initial execution of' the cold Boot coúe
are: Establishing an initial /.3 Environment if necessary, ini.tiaiizing any Z3
system seµnients such as an Extended Path. Flow Control Package. Harried Ljírec-
tory buffer and such: setting, system-specific values such as the locations of
Ai locat ion Vecwr buffers for KAÜÍ and Hard brives: and execut inµ the bevicú
Tnitialization routire (see Function 21). The Cold fíoot íout ine usual iy éxitÁ
hy chajnin? u) the Warní Boot Function (Function i)to ser vectors c)ñ É'Cíp<é C) of
the TPA memory bank.
li ,'
)) !-unctiot-, "' (;·: ::-¿Ó:: :' Warm Boot )1
6'
li """U'
)j Enter: Neme !Exit: None. ji
l: I) Execution rezurrc to ¿'pj-'. ))
V
ii )1 Uses: Ai iRecnHers ).
:
L±=__-- _.--- ——i'—
"!"h ]'" ñmct ;é""c"i Ik--- iñjí '[: ijp1.'": t ;í'j Ü: ',C::i ;{"j,j" >;t'jj [tCtí cm ¿; rúturns t. l") tjj'j (Oli: tít :n'l
i'rQcc^7Áo}" ¿¿f ú¿'." '"': '!c;,"¿¿i:jl.- lTÍl"Cí!: t tlzs.' ác'!auit d{' :"\"c Á"n) tt::aci."· .L"' I' i'f \l}h.r-·t.:
rjL|lt\. ,titt';',. 1'j()-' \i'ú ". í«>".c'lÍ|f}!¿"": iti, t, i: ír¿i "",i\i"¿j l"l1: i\Ütj\ oi")í )o!": .
1)12 :¿':-,s ,Átc'i"g,_; i"?'." ::v ii !--i}cna'."L'1-! l<g: ziLi(_-rjí bysteni ].'4.[c"n: '·,¡¿'/:' ij\,-^.'¿/ í',r cin,:
L)PEl"("Á¿ l!','""' t¡"¿"jrj" lj' L;"j7'(),'i"¿¡i". t' l '<''1\¿Ai"1il íSU"}\ 'i\"Ú'J tc:' l" aiic:g¿".'. j¿")t" (\ii) !1'E'ñ' )r\"
ríc)!r|á, :4 t(i tí:s ","L-"'. ". c) i" ."t-" ]l_bc ñcÜ.1Ñ p¡'\)l" t"álF'> Ir :!llit "ili !1-C' i{n! > CbiLj ;":..:s.; i"m ',
sñoüi¢í i]: 5[e¿Át.!. ¿Ñtt: f" Ult L"i¿-."-,tji2¿it :üt, ¿u"2uií|¿'f!: \jÍ the julí¿:fb \"'tctoF in the i'i'.jx
M:",Cit- r. Ti"l(-'IL- i!. ¿, j2: ngíl);"l:' C'\: i-L·!¥í,C7I'. if.' tl_ii> in the cam-- íd \/g("U.'4: "¿,!!-: rL' 2lís
'í',,Uhí !Jl'lÁ ',C-CU1 K¢'Á t: 'tjr 7!lt-' \Ú\íÜjj. ¿t": ci .\CA CIé 'Rex!' !51 C)',. in >..t:c'í, ¿¿
g¿zMí .th'..: ¿:j'.; á'z: >", tí) t!7·_ j\t-- ?!j'.1í"> Tl'tLRÁ ')e sepI: .!"."¿Lt"l\" cieíe!"n¡;ljec1 i:>c(-' íü: "í' -
tiori -3(ii.
li
Function 2(>tüj£) Console Inguz Status )!
I)
Enter: None
j: Eíít: A=CFFH it Char Ready, NZ
l)
ii il a=c' nNo Criar Ready, Z li
)1 I) I)
I) lUses: AF ):
\'
l:1 j:
Tiús funci ion reíurm atlag indicaíinz whether or not acharactcr nag tjét-'ñ
enttrej t"rorü the t.cms: o}e cié\"icé su iectc-ci by tht' 7()EYTF or Paze' () of t2_íu 'ri' '
tsanÉ: .'i'ijt: rt'tu'"ri sunu" i:'-. üUerí uüec! !)\' Trar}.si€'IjT Fropranis to deterní:n-· j;
1j\€' us'i'r fiá: -. ai íe}lil"í-c"¿: íü "nm"t Cíf" :'}tc"')1' r'r()?r¿í1íf ry: e.j'ut }cü").
2E
£3,'P mos PROSRAMM!!!Ü
Ir-———- 'i
lFuncOon 3(vx'j9 )Console Input !
iii
)Enter: None lExit: A=Masked Input Character ji
I:Uses: AF l
(i : lj
This function waits for acharacter to be erúered from the console dtn"ic't'
selected by the j(j'jYT'L on Page (j of the 1'PA bank. and returns it to the call-
ing routine. Accordinp to stricu C'P/3l 2.2 standards. the Most Sipnit"icaní hi í
of the input byte must be sui to Zero, but this rrtay be altered by 'ÜlfÍ irymt
mask for the ccjñsoié Oeric€'.
l "'"_"-_ ---__"_íl H
)Function 4(xxOC) COñScí1 eC'ütijút li
;"Enteí": C=Cnarac-ter to send to j"Exit: None. """ jl
)) Ccnscj eI) )1
li ii Usee,: At li
1( __- - —
li
..__._- ===_ - - "i:
Ttii:-, fu:icí :on s,t'rids. a:3fK·CÍ tlei c'hm"acít: í" to tne Con"m It" t.'é\"icc' dcf !r]¿'d 1)\" the'
!C'!i"'"7': or", !'aµc (' tin' Tí-: '. iiaiü:.:t','."í!i wait for ibc (: €".'"i¿'t"" tC: i!€-': :'(':.lL'
rt: CtCi 'E .!tne'""'L"·ís: zr'". I"'): 'c' 'c. ¢Ei2íj íri'" tijc c'j]: "A7aLtc"í". añt! "\á .j!rii ,'j "!" 1)7": ¿",
t-.pt"cN 1t."c; .!!"1 rlic ':
-'ií¿.:","'¿:L'j" r.!€'","j: e l. oí\i [L'tlratjÉ.;t] 1c)! tit- cit-'"', if-'.. ¿d:- ¿ill ("./üjjG; .
f"""=' _""" """" "" "--==_ ————= --_. _ - __ -_ ==-í,
i) Funct'o'"', "('R'-"jµ" )Ust Üuzpu" ji
i: "" """""" '" " " "" "'" _"jr ,'
|i, 2: ",tet"": C. =CnaTac,Te!" to séi":tto l: Ej:z t: None. li
l: ¿_2£í ljev (Printerl I! i:
ii I) ÜSéE :AF I!
P
'l"h]yY tu!")ctiI-jn \.\"1Ñ send aspc'cit"ied character to the List bevice (í'rintc ["}
clef inec! 13\" tho lo!ñ"Tí: on Pape t) of the TP-'\ Bank. It will m.it fen" the cié\'"i¢í
to bc·cor,ie ready. it" ñt."cessál"c. before senciinz the character. and 'n'i }.! nia: 'j: j[
db s.7)eciÍ'je: ¿j;i the' (:!'íáraL-tcr berice (:Qr'.j'iµuration tOr the Output dericc'.
rj '7
~e
PROGRAMM mg B/P mos
jFunction 6(X>: 12) Auxiliary Output )j
i
Enter: C=Character to send to 'Exit: None. I)
t li
Aux7 )iary DevicR )Uses: AF
} i lj
This function will send aspecified character to the Aüxiliary Ourput Device'
defined by the IOB\"1"E on Pa?e Othe TPA Bank. It will wait for the device
to become ready. if necessary. before sending the character, and will mask it
as specified in the Character Device Configuration for the Output derict.
li \i
iFunction 7(: <:i15) Auxiliary Input li
}| I) Enter: None li Exit: A=Masked Input Character ,)
ji li i)
ii ii Uses: AF i
Lli l
This function \'\'j}j real ¿j cbaractc'r Í'roni Úhie Au-íiíiarr Input íkn"ice dc-fincci 1j'\'
the jO!3\'Tí on i-'agt" l) o!' the irí·'.-'. Bari!" .It will wait for acharacter to I): -
received. and \\'i i ]nía.U: jta"' spec ifted irí the' Character Ikn"ice CQñi' lj2w"át icm
for the' Inptií de-rice.
I)
Function g(: ·:x1tj) Home Drive"")
l||
l It fq
)j Enter: None 'i Exit: None. Heads on selected ji
ii )drive moved to Track ó. ii
li ii Uses: AI iPrimary Flegisners ¡i
|1 ,----— ---_ .i: li
This function ail! position the headís) on the selected drive to Track (I. in
i3/i' Filos, This operation pert"orrjjÁ no useful act ion, and is simpú" aketurn.
Pendin3 Y\"rite puíyzes and head reµositioninµ is handled by the individual
device drivers (Speciíicaily Select Drive functions).
28
Wp BIOS PRCK: -;RAMM!!\'(;
lFunction 9(xX1E3) Select Logical Drive l)
'—- I)
ll
iEnter: C=Desired í'6ve )Exit: (Success) A<> C, NZ ':
l
l(A=Ü..P=15j IHl- =DPH Adáress i
ii(No Drive) A=O, Zero (Z) i
PHL =O
)'Uses: Ail Primary Registers l)
This function selects asynüt'ied logical drive as the current drive to whÁ-'ií
disk operations refer. It" the operation is successful, the lhsk E'araníetcr
Header {DPii,) ad{jTe,s.g it., returned for later deterríiinat ion OÍ' the unit param-
t€7"Si If" the opeí"at jo!) fai is for any reason (non-exisrant drive. unknoi': n c: ¡"
bad niecíia. etc ), aZe7"ü ráluí" r)ointer is returned to siftñiÍ"\" that the cji\'t-
cm"ínot be' acct"·,sL'rl T!ji1"c}L}7j': tr:tlisio: ",.
h"""""""""""""""""""""-==---··----============_ __"_—: m-- "" —— "T ' "' "_:1
l) h'unctioíi j¿/ (íjÁi-i Se iect Trac: i'. I)
'l '\
1\
m__ _" _ It _" ;j
)1 trite: ": Z': . T- Dez"u"ec 1t"a: l-' Numtier )) Exit: None. 7rack Nan5er Sá'Y'é¿ ))
)) 'l i
!' k t
li 1( User: Nc) Re?istet-s. l'
'(
j: -——— - li _,_—"__===== -—_ -f. i;
This !URUli¿?'1 '.[(""/: "t-:", ,"i A¡'j·¿ iíie'f í-(.D,L'jc'r.l ÍliacÉ: riur,iher for ¿j ttií: ::rú ;Áj>i Üñú" j'¿Á-
t101\. 7hí' R::--l \"aiúí- StDTí: .i \\i ZÍ4 '¿}jjg3 iunctiúm v\ iLi ::)ée í:ie Oñtj um'tl it"t hi:,L
F:ea':is: aúti 'n;"j'.e>,.
NOTE: \'Y!)!iÉe ib-ÚÚ \_Xjú;' i!. j}?['{: :lÍl£-.í for this function. Qjñi} the itñ'.'t i" '-.\"i: .
(;"'-c!"t"j l", ü:>ü.! in ru:.i di í\"t'r>.
l: ",I)
ii Furíctiot"í 11 {y.>;;']j Selecr 8}é'CtOl" l'
i.t.
:'
),1 "
Ñr
l""" """ j""""" ="")'
ii Enter: t';; =" bes7rEFí Seítor 'u,i lExit: None. Sector N' rmer saveci i:
i) )'
,
ji Uses: No Registersí )!
l,li
This tunctiori stores aspeci!"iecl í.oµicai Sector Number tor ai'uíure dís"t
opcrat ior .The Íl2sá \",:Juc stored with this function \'\,"iii bt" tht.: one useú :í
íj:jsÉ: íü"ád.> an: j\irites,.
NOTE: 'Yiñi it' ¿j lo--bit \"¿;jút" is specified for this function. only tht- Jo\'\c-1" h;nt'
(9-bit:',) Ib u«': 7]!"] ali }lcppr Disk and most Hard and RAM bi"jt drivers.
29
PROGRAMMI6·!C B/P BfO'"'
l""ii
lFunction 12 (xx24) Set DMA Address tor Transfer I)
i,-—J
)Enter: BC =Buffer Starting Adar lExit: None. IJMA Address saved I)
$
iUses: No Registers i
t1 i
This Function stores aspecified address to be used as the Source/Dest.ination
for afuture disk operation. The last value stored with this function \'\"jj] bc_
the one used in Disk Reads and \\rites. In banked systenís, the Bank selectcd
for the transfer rüay be altered by Function 28.
li
I)
Function 13 (Xx2K
,
Disk Reacl )j
ii Enter: None )Exit: A=Cj, Z if No Error£ )1
li )a=Non-Zero it Errors, NZ |1
)1 )Uses: Ail Primary Registers I)
"l"hi fftjñc: tiori reaíi: -, aj.Q!2i cal J.?b-tuú esector f'rort the' IJAÉ-. Tra: !: anti Sc- L(2j
sci by Func't io: ii. 'l-j }to the' acídrt"".s Ñtt "n ithi"uncí jgñ ]Z.(ni return, F:ez' -
istiu" A=(l ii' 1Ét? ¿7r¿'}",zti¿")t '.',¿7c. m: ícccssfu! .Xün-Zero if' i".r7c?T>. occurred.
r__ '_"__ __ "_ _ií
)'r
|1 FuncCcn 14 í): .':z/'\j DÍsk Wri te li
li
4'
l_mr""______ _""i'
l) Enter: C' =1for irníne'iiáte wi_jt€ ii Exit: A=C', Z if Nc Errors l'
ii c: =(' tor Ecttereá w:"itti IA=Non-Ze: ^o it Errors. NI I)
i) I) Us.es: All Primary Eeg7sters li
ji ,-..__—- -— — _..'_-— ii
'i"his ft:nction '.u"iz.c'i·. aic:'ic,",i l2S-bcíe sector to tht" DiúÉ .Ji"rac£: anü tíe·: }()}
s:t.í by í'uncí :on>, c;-! lÍ"1"Oil, the' ad':iress set with Function 12. If" Re,z"istc'r (=j.
an ininiejiaíe w]"|[t; and flush of the bios but"t"er is performed. it (. =0. lhc·
write iüá\" be deiared (iuc' [c the deb!ockínµ.
i
li
Function 15 (xx2Ij) List Output Status :
Ii:
l"ji
!P E
lEnter: None iExit: a=OFFH, N2 it ready tor !i
i) )Output Chara: Uer
jl )A=O, Zit Printer Busy ii
il IUses: af ii
|1 ,
l-_i'
Thi:i' lunttion f"L"t'urrí' afj¿"j' inchcating whether or not tríe printer ¡s ready tí'
31F
B/P BIOS. PROGRAMMING
accept acharacter. It us',es the JOFJY7'E on Paµe Uof the TPA Bank to detc'TrfiinL'
which phvsical device to access.
_=j'
Function 16 (Xx30) Perform Sector Translation
"7
IEnter: BC =Logical Sector Num Exit: HL =Physical Sector Num i)
:DE =Acidr OÍ' Trans Table li
Uses: All Primary Registers !1
I_.—.-—l1
This function translates the IÁWica! Sector Number in repister B("' (íjrjr c.: um>:i
at presenr !to aPhysical Sector nurober usiñfz the Translat ion Table- obtair!¿'Éj
froní the DPli and addressed by Di..
Thi sends tht-· strict C'P/M 2. 2-corlír)liaT]t port ion of the tilos jUüp Tüijc: .I! tu
rc: -':í SUi" iéÁ ol' u'nt ry JuI1iµ"] rou2hly fol ioi'\"g those used irí CP/M $. but mth
c'c)rrcc[i(j;',- to 'n'h: ñí'\"c !'\: rce'i"\_c'f:í í() ht: áeí"icienc]eg- and inconsistencies in tlit'
c'í: ll iriµ" pal"arl¡c'{¿: I"s. ancj struc'["uI"cq.
!!__" -—- __"" _"71
)! F"tmctmí"í 17 (X>'33) Console Output Status ))
j: -- li ____ '"" ,t
d,
)j Enter: Ñj"ié ii Exit: A=CIFFH, NiT Console' li
¶1
I) li Reaay Tor output cha: _i|
i: A=C). Z it Consnle E.u'íy :i
1) li Uses.: Ai" {i
É¢
--=——- —i:—- --- -—= _-=-_ .———- _.-_ -.t.
ihi'-, f::;j¿N :n"; r€t¿["n'-7 a]iii" ]rjLj}t-at ín" 't: hetntr o: not trié console í)e\"lcE_' "a
je¿"Lc..! h'. the TC)TÍ"'?""í!. cn P¿'2: "!' (.} tht' TÉ'Í\ FsanÉ" is read": iq accept" ans.)[-: "l·. !"
oútF'tt Uíaraí: tc'r.
r_ "I— —--- "":——---— —_ """"" """"Éf
)Furiction 1"'. (x>:3G) Auxiliary Input Status i)
L-_____ li
lIli
)Enter: Neme lExit: A=OFFH, NZ it Aux Input i
ihas character waiting j;
lA= O, Zif No char ready :
L
iUses: AF I)
ii;j
Tñi> f'unct ion returns afla? indicating whether or not the Auxiliary Inpuí
selected tn" the IOFSYTL on Paµe Oof the TPA Bank has acharacter waitinµ.
31
PFK)GRAMM!NG f?,'P RIOS
("'"""""_'""i1
)Funct ion 19 (xx39) Auxiliary Output Statuz ))
l_""__")'
l
Enter: None lExit: a=OFFH, NZ it Aux Output ii
Ready tor output char '
A=O, Zit" Aux Out Busy
llUses: AF i
1 l l
This function return aflag indicatiñ? whether or not the Auxiliary Output
selected by the IC)RYTE on Page C) of the TI?A Bank is: ready to accept another
character for output.
I)
Function 2C.' (xx3C') Return Pointer to Device Table j:
il'i
r"" '! "" """" ii
lEnter: None lExit: HL =Adar Device Table ii
:i))
{
ii li Uses: HL li
jl
_
,=___ -=)l___ __ _ __ ,,,___ _ !
Thi s: funct ion rcmµ!á li" c("]]"l"es1"c}n¢: i-, t:ian am: jo?íjus. ci'/y Pius: funct icm a! t.nQ'¿?!':
precis,e bic dt'f ín:iicms: \"áT\" soniU:',"]at .The Character {() tnt'ic" consn: -,:s (l:
four dtu"ice>: \'o\t, []"))¿ .;'j(-). aná XL'! .}ac!í Í?íib an input arri out ["üjé lÍi¿iy,É: .
datm rate sc-Qt iríg> an'! lgi'()E(_)L"ol f'la '"i. \üi all cIel incá ;-it; ítins: s- ". n. .-\.' K/: Gl"!.
ami X'7': :./X! 'y |lan{j: '!)at: }!íj2 .cl l'rúa;: Mf'ti ! l \" IQij'É cííic'nt eíi inCÍZCíi \"€' ;'µ icn .P))'"
T
are ¿i'."¿lij¿1l'):(: f'-j! !¿"íít'7" cu.panx !t'ti tiut Une.
"===i:
))
Funct7o!", £1 (X: 'UT" jImtiaVze Dewcee l)
'--- "_=r ------ -—i!
)( Eri te r:Nc: me I) Exit: Neme. ImUaiization clone I)
ili !'
!1 Uses: Ali Primary Registers I)
P'
jl _
ii == --¿
This function initial izes Character TO settings and other functions ví'hicn ní: n"
be varied by aCrmi"iµuratíon Líiiity. It If an extended version of the corre-
spondinµ CP'/Jl Pius', furict iorí. Iíí pTirli: "iry use is to restore 1(1 cc/ñt iµurations.
svsteni µaranietcrs: síí"'!"í ¿;:clück rate. "n"ait states. etc, after aUeratiori by
proprams \\Éi g}i ai recr ly access harci"ñ"aí"e such as many rííodeni pro7ragt>, anti tht-·
confipurat iori ut !. !ity. r5F'(': ¢T(7 ( ü:eí' C). 2) .
32
B/P BIOS PROGRAMMING
TFunction :Z'Z (x: 4>) Return DPH Pointer
l)
Enter: None Exit: HL =Address of start of i
Table of DPH Pointers l
lUses: HL
Ii
This function returns aPointer to atable of Hi-bit pointers to bisk F'aram--
ter Headers for Drives A-P. ANull (0000ll) entry means that no drive is
defined ai that lapKal position.
Function 23 (xx45) <Reserved tor |Y1u}t1p]e Sector 10>""""")
ll"__"""" """"'jl
:Enter: Nd!"íe iExit: None. li
i i jl
ilUses: No Registere li
jl i_--_?
Ti"ii: i t'uncíicm i:-'. líes-z!!"\"ts:lin the initial B/'p í:íos release and sinípij re'turrm
l)
jj Furicticaa 24 (x: uúí) Flusn DeMock.er li
)Lí==——
.—_ - --_=:í—II ' ' "ll
li Enter: Nctie i: Exit: None. Pending ljis! w!' 7Üñ: )1
i: l Executeg. l)
)1 jl Uses: All Primary ReWsim"ií I)
,.._, ———="_-_ _—-_ __— PÜ_ —— —— —_ ——. --— —-_ ---¿j
Thi "ftmc tion \\"j";tt: '_, an;." p€"!")dirlz F)at ato disk Í"1"Oíi"l deMockinsz b1jf"j"ers3 agÍ RiE:}i-
tiL)r}t'¿_! in lU3ctic]í! i-: a!')¿7\"t-. This' t'unctior: shoulci bc callt'C 1!1 crit icai arei-u,
\"\"r!c']'y¿- í¿¿sl:yb ál"C: hein;; s"\\": zr)i)gci .or ñm'diá is, be irip c":changej whctti it is ;:xjss,i !.Ül-
thí·it t'h:-' (")!)ei"atjr!: ?Sn": ':tt",, i4ÜiÍ not cíttect the chan!'c".
["""""" """ íl
lFur,cticm 25 (xx4Q) Perform Possible ínter-Bank Move ii'
i=-=-- -)1
lEnter: HL =Start Source Address Exit: None. Data is moved I)
DE =Start íjest Address I)
)BC =Number Bytes to Move iUses: All Primary Registers
i!!
l
This function movwí 'the specified number of bytes btnween specif led Jocation· .
For banked ñ"tcj\'és .the Source and Dest inat ion banks must have been prev iotiíi iy
specified i': itij an .\3íO\jí cAl (t'unct ion 29). Note that the 13,/P iníplen}t¿'rltaci(): _i
of thi:.Í'utic't ion rE'\"E'!"$e: >the use O!" the I)i an.:i l'ú-. re;Ñster páií: -ÉFút!i Ur'
CÉ'/'\'i 3eqtí j\"¿j iúni funct ion.
33
PROGRAMMING B/P BIOS
Function 26 (xx4E) Get/Set Date and Time
Enter: DE =Start of 6-byte Buff Exit: A=1of Successful
C=O(to get Date/Time) A=C) if Error or No Clock
C=1(to Set Date/Time) Uses: All Primary Registers
This function provides an interface to programs for aReal-Time Clock driver
in the Ellos. The function uses a6-byte Date/Time strin2 in ZSDOS format así
opposed to Digital Research' sformat used in CP/M Plus for this funct ion.
Also. This function must conform to additional requirements of DateStamper(tm)
in that on exit, register Emust contain the entry contents of (DE+5) and Hi.
must point to the entry {DE)+5. If the actual hardware implementing the clock
supports !/1Cl second increments, the current 1/10 second count may'be returned
in r<tist"er I).
lli'
)Function 27 (xx51 )Select Memory Bank I)
' i:
\
iI! !1
l?
iEnter: A=Desired Memory Bani' )) Exit: None. Bank is in Conte: "t )l
)in range CL.7FFFH ii
i
l) Uses: AF ))
--O
This. function selects the' !¢eniorr Esank specified iri the Are.·zister arÁ níakc )¿
act ire in rhú addres' ranjn' ()-"Ff"i"li. Since charxc ícT II") }}]¿"j\" kc Ut,eí": \íiic: tí a
bank QtÑn_ tlmn the Tí','. l\\'hi¿'n c"c)r,[aiI]g. the Ic)µy"r1 )is ac'tiuciíed Uth tiiij
funct ion. the" Fill" i"4on aUí()!1"la: ig,'íí iy ohtain: sthe' IOf3\"Tií t["qn the Tí'.'. htuíf ft:
in.surú tijat Cnij"ac.te?" jí.' (jc(-ú7's' íí'ith the' cie:úred cié\"icés.
!! ___ -"" "_r.: _" "" """ ""i:
)1 Fumtion 2C (.u: 5-.f Select Memory Batik for ÜMÁ li
I) --i:
)1 Enter: A=Memory Bari" jo!" Disk IExit: None. Bank Number sawñ ))
l) DMA Transters tor later Disk IO (l
))
iUses: No Registers )1
This function selects amemory Bank with which to pertorm Disk lO. Funct ion
12 (Set ORA Transfer Address) operates in conjunction with this selection for
subsequent Disk 1().
3A
E!,'P BIOS PROGRAMMING
!
iFunction 29 (xx57) Set Source &Dest Banks for Move
l
I i
!!
Enter: E$ =Destination Bank Num Exit: None. Bank Nums saved for
C=Source Bank Nuñiber MOVE operat ion
lUses: No Registers i
This function sets the Source and Destination Bank numbers for the next Mc1\"c.'
{Function 25 j. After aMore is performed, the Source and Destinat ion banks-k
are autoinat ical!y reset to TPA Bank values.
This marks the end of the CT'/?4 Phis "Type" jurrtps and begins the unique addi--
tions to the B/P Faqs tahle to support Banking. Direct IO and interfacing.
T_ |{
Fi
i) Function 3C (xx5A jReturn BIOS Addresses )!
)J""Erter: None
I) Exit: A=Bios Version (Hex)
:;
I!BC =Addr of Bio£ Base I)
r?
li i) de =Addr of Bic.s Ccntzq i:
jj )hl =Addr of Device Table
|1 lUses: All Primary Registeus :
íü==— =,. -==- -— —— li_ _. -ii
7'ñA J"diá': -T- Áji: l"e'Lij¡""I]"- \'¿j; !O(-: j-, pointers ¿j interna! FÍCKS ci¿·tLa ar{'¿: '-. aníi tí.-'
ij'jos \"ti·ry,ion :\"u[Iij}¿'r as irid icrnc'c! abm"e. The Liio.s Version ruar 1?0' used Lq
Ci¿"Lt"1"IÍ: 1i}L- euímmíy Cit' tlí'-: :y]·kLt"l}L 3(jf't"\·\¿l!"e, an'.d v: iljbt' used 1)\" \"cíj"i CÁJ'3 su: 3ÍK'j"z
uti!itic't tj g:ii Ílmzc": t!í: "r)c)s.'-"i!:.! lity o! data cm"ruption añd/6r au an irí': iic,i··-
tc'j" ct suppoued |"e¿¿lurL.6.
Tht: ri¿1s'.í A..lcin: "-.s of' tht"" Pit'"- juiüp Ta!.ñe returrmi in rezzstc'i" í4t.' is íji íc'r, új,tj.;
tu in"n'íú tiiat tht !)t"(7r!c'i" 1!kju"' in.z is achiúved into tne Lí/P data >truíturc> jf'í
the erc'ní tlíut aFSiCr-. ':',R l!' ÍKí4 been added such as wht-·ñ Iun: }in,¿ \":'("""):e:.
\'r'N le t!ü: k'>cÜ"Ri tíí'Qt jutiiñ ai rimnory lacauon ()(.)L)Üt'i noríüat ly pojths 1() tñc í:icú-
M'<·+-? .it i". nut a}'*'a\"> IL'j}ai)l€'. whereas this function \\'iti aiv.'ays rí'íurrt ¿j
true valuc "\i'i tii !S/í·' Eic_i',.
RegjÑtL'Tb F)é and Fil. return pointers: which are of value tcj program-s which alu-'r
or configure ra:_ious Filos paraineters. The pointer to the configurat ion are'a
of" the Bicm should be used in utilities as opposed to indexinµ from the strirt
cjf" the 13ios Juiüd Table since- additions to the jump Table or insertion of othc:
data wi ll af"i"ect thü Configuration Area startinµ address. The pointer irí Iii
is ami iable for UmÉ' in systems which may contain more than four character 1()
dtu'icem This pointer enables exchan7es of devices to place desired de\"icL·\.
in the first four posit ions of the tab1e mat:in¥ them available for selection
\"iíí tht' tónrn. After any alterarions are made to the devices. acall to th'
r.'£t\"!c'e '.".(jl!i'}7L¿j'¿zt ion Esi(_)s Funct ion Zf should be níade to actirate thc featu.i"c"s,.
3.'j!
PRCGFL'!MM1NG E3,'P L?!OS
FI. OPPY D! SK SUFSF(3'CT 1O\'S .
ñinction 31 permit>, low-level access to Floppy and Hard Disks {via SCSI inter-
face) bv specif'ying aDriver \"umbeí' and desired Function. whi le sortie hardware
types do not suppoi"r ali the paraníeterís specified. particularly tor FJoppr
Dr i.\'és, thi sarchitecture supports all types. although specif ic systeíns mar
ignore certain funct ioñÁ. In this manner, for example, asingle Format pro-
gram supports NEC765, S\fC9266. WD1770/1772/179X and other controller types
with widely diff"erin7 interfaces. Floppy Disk functions are accessed by
enterin;q alvalue into Re?ister P, (Floppy Drirer Number jand the desired
function number in Register C. then jumpiñ? to or calling BIOS Fntru" junip
number 3í.
I)
Function 31 (Xx5D) Set Floppy Read/Wri te Mode
lj
li Floppy SubFunction C) ;i
)l
-))
I) Enter: A=C) for Double Density )Exit: None.
tp
l! FE for Single Density lI)
iB=1(Floppy Driver) lUses: AF ii
)) C=O(Subtunction #) li)
it
This imut int-' es.tah! ish.e: qthe Density nioaú of" operat íjñ of' the I"lop;'y I.'zs?
coni:rol ler ícr Read and '.íriie ac'ce.ssús It a.ssuníe: >then SL}hru!]ctl()r"i: it' St.' '-
Siui' and Ñcnoí"l anti .3 (Set :jÚC'tCfl]"í F)cí\"£' bet'ii cal led first.
li """ "----"-_ '" 'j;
I) Fumtiou', 31 (y.xFy: lSet Floppy C'isk &Motor Paí"mz, ¡)
i) Floppy SubFuncticn i?
t:
I) t.
;: Ente_" A-lj fgy" 3ÜÜ rpní (norwa"i C: Exi t" Ñoñ€. i)
I)
FE" tor 36Ci rprr' iú"/©A) )'
é'
ii I) -rp tar MCb': C?'" Control, ji tjÉéÉ "Ai" li
It É t'
ji c) ii" Motor aiways on i) I!
i: e=1")?sf- Drive Gize li li
t' L
)) B=1(Floppy F'"iverl 1| jl
ii C =i(SuDTuncT1'3rl #) I! l|
ji ,
-li ji
This rout ine establishes sonie of the physical paranieters for aFKppv Drive.
The norma! 5.25" and 3.5" disk drives holding 40Ü or S(J() kb or les: srotare í: í
3()() rpm. Many of the nevier drives can increase this speed to 56() rpm which i:-.
the rate used on ojcit'r S" f'lQpi)\" drive"m This is the speed used on the "l"ii;úí
bens'ity" ].2 Mb 11I3Pl forntatted) 5.25" drires'.. The Aregister is used to
indicate íhu ftísté$\ speed capable on the specified drive. Re;zister L) is use-d
to indicate wM'thcr the !\(c)tor is always On. or will start and stop periMical-
i'u. This nÉ.)r"niail\" us: ed by the Ellos to delay for aperiod before v\'ri[in£' if
the l}í(jtt/: "iS µtoi)¡)£.(l [(j a! Iqv\ the- diskette to conic up to speed thereby ríiirü-
niizinc' chance i. Qt" diña cm"rurt io:í. Rezi>: ter ii:sused to indicate Iljt' PÉ\"\,,-
.
E/P BIOS PROGHAMM INC:
c'al !Iie{: ia sizc an: 0=i'iard bisÉ: ,OOJI3=Si" Drive. 0!013=5.25" i)rÚ"e. ¿Ü">"i
()] 1R=-3 .S". A'othinµ is returned from this conimanci.
WIn le ai iof these' funct iotiÁ may not be supported oí? any speci f"j ¿"' compu'. e'-
type. the interface f'rotn u:jng proµ,rarns shoulc' a!way,x past, tht' necexmíry
parameters for compatibilitr.
W
NOTE: This rout ine assutíic's that SutíFunct ion 2(Set Head and Drive) has been
called first. Cal! thix routine before calling Function O(Set Mode).
ó
)Furiction 31 (xx5D) Set Head and ljrive )
)Floppy SubFunction 2i:
i)
Enter: A=Drive #(Bits 0,1) ;' Exit: None.
"
"'")1
L.
)1 Head #(Bit 2) I) ji
ii e=1{Floppy Driverl li Uses: af ))
r ''i C=2' íSubi'unction Ii ji
j: 'e
í"ríi urout inc i .s ti:nc ""L:'-f ",', I'-}, re;zis.»íc-r .·', ccmtainin,s tht Flc'j';: u:'Át nuul})g :"
.A "' 'j\ i=() :3=ili,ancl tllÍ' ]j",'¿i.i i li T"' :'?
l ') _Vu ¿;'"é ("' .lX!!t"u ]}j.:'·:.'t!]i:í.- :"^ !"t'tt]rl"?'¿'c! t["Glk ttij ", ftñ\-t ñ)lZ. \:¿": l!th':
Sul'tUj"!'¿zj: }[1 i"'¿ñÑ" i!,. >; .t" tit-' qÜ!'.': '>, tCf rl¡¡:!!rliiL'z"' r': "('l'!U:,l-· in Flcuj'.. a¿'cc!,y,t.': .
f
i:, Fur'ctu: ín .: ': (' >' ·53 'Set Floppy Cíu: k Moíje j:
li Flcmi'; 8.gt.F;cl"[t2íic: :". ti
ji== == _"" " " - -- ""=" "y ' """ _"" t)
i; Er'teí": A=Phymcai Sector NumbEr|: Ex: t: None. )i
)) L) =Phváical Sectc:_Size )i )'
i! E- =Last Sctr #on Side ¿Usu: AF i:
I! E:, =1(F]c'l??\·' C}!"1ver) I! )i
)1 CU(SutjTunct1ol"': #) li I)
L== " -" "__ :==_- ___,It -—3i
Thi:-, routine es¿a}'iis:hef informt ion needed to proper iy acce: ',s aspc'ci l"i z'·-!
StéCtOl" urianibiµuousiy '\i'iti"í anuiíiber of" different controller types. On é!jtí"\".
Register Acontains the desired physic?í} sector nuníbcr desired. li) contains thí
sector sHe v: hei_e C=J2A bytc" sectors, i=Z5() .. 3=1024 byte sectors. and
F. contain". thü last sector nuriiber on aside. ?¢ormally register Fj¶"j unused in
Western DigiUl control iers. buí is needed with 765 and 9266 units. Nothin;z
is returnccl f'roiH this subt"urjctjon.
"u7
3.
PROGRAMMING B,,'P BIOS
l"""',
)Function 31 (xx5D) Specify Drive Times l
P
)Floppy SubFunction 4
I
l_1
'Enter: A=Step Rate in milliSec Exit: None. )
Ci =Head Unload Time in mS l
E=Head Load Time in ms Uses: AF i
B=1(Floppy Driver) l
C=4(Subfunction #) )
l
This subfunction set various tirtíin;z values used for the physical drive select-
ed. On entrv, the ATe?isteT contains the drive step rate in milliseconds.
Within the Biosm this rate is rounded up to the nearest controller rate if the
specified rate is not álj even match. Reµister Dshould contain the desired
Head Unload time in mijiisecond: -,. and Eto the desired Head Load timc in WS.
NOTE: \tith Western Diµizal tvpe controllers. onlv the Step Rare is universalú"
variaWc. In these S\~jélÍiM rates siwiaíed by the Bios settinps are roundcci
up to thc: closús,t fixed step ratc such as the 2. 3, 5. or (") niiiiiSeconci .ratc.
in the V\T)1t"2 (jl" (), 1(). 2(), or 3C) milliSecond rates used in the oldcr \u)l""(;
and \\'Dl "'tS .\"oíhin,£ is rL'[uTnf-'{! f'roní this furicr ion.
m
l""_ "'_ ft
)Function 31 (xj(Eáíl: lHome Disk Drive Heacs. i:
i: Floppy SubFuríctzori E. I)
ii"""" """""'=""" """" ir"" ¡i
I) Enter: É3 =1tF¡O»F!g' Dviver: li Exit: A=C), Zero Set (Z) if Ok": j:
C=S. (Sut'function #)' 'A<> G, NZ rf ErroT£ !1
a'
)i
lj) Uses: AF ';
i i MTE: Subfcns, 1. 2, &4Needed
I)
i'
.\
l=-— _-.- ——— "-- -_—:di
Thi ssubt"unct ion Mc"tpg the headls }orí the selected drire tc) rrack (I {honit' '! .
Only succ'esg;/!"&i Jurc is indic,ne"' by the value in the Arepister. Ni) cnhc·í"
reµisters rúay bc altered E)\" thi": f'unctiort {especially BC)'.
NOTE: This func-t iori requires that Subfunctions l(Set Disk and Motor F'arame-
ters). 2(Set Head and briu-') and 4(Specify Drive Times) be called f irst in
order to establish the physical characteristics of the Drive.
38
E!/P BIOS PR(RRAMM1HC
-m
l)
Function 31 (XX5D) Seek Track. )
Floppy SubFunction 6
l
Enter: A=Desired Track Number Exit: A=O, Zero Set (Z) if Ok li
)D=OFFH to Verity, <> O, NZ if Error
iOtor No Verification
lE=Ofor No Double-Step Uses: AF
!<>0 for Double-Step
IB=1(Floppy Driver) NOTE: Subfcns 2, 3, &4Needed I!'
C=6(Subfunction #) lli
i
This subfunction mores the headls) for the selected drive to aspec.rtied track
on the media. If the Double-Step flap (Register E) is set to a!Ñon<1cro
value, then thc.: control Ic! \\'i !lissue two st€'j.> puisc: -: for é\"cT}" track 1rcju-"-
Uic-nt cu" cjUc'rerlt'2-n"¿ '\'khiC?l ij> required. After tnc Seek. aF: ea.':j in füñctloñ \i'Zjí
tic pL'rí'or|Ii¿Li to í'c:"ii"y thxí the- CIts ired trauk \c7iA found if' tht: \."erific: ít 1ot:
iia> (F: e;-'isut:í" i": 'is sc't to at \Tm-Zero Number. preferably 0T"í-'"ll. c)n1y the' AT
rtgi" tt'T"·, ñr'i\" hi' ííl ic'? t_'¿t h;'." íhi g, Í'ttncí ion.
NOTE: Thí:-. 1Un¿1-io'; rec!u!;"c'F, that Sur)f'unFtií)ny. 2(Set ÉkülCj and D1'i\"l'Á 3(bt-i-
r!ó!'i":\D) >!. 'p|I.I)ci¿ íaná d{Slx'ciíy Drive Times! be c¿: llc'cl first in orcki" 1()
ebt!-it)ii: '.tj Ü)l-' r)!j\": icci! ch([]"¿1: [cj"ib[ic$ the r)ri\_t'.
r=_
i) Functicm 31 (:t:<±3) Read Floppy Disk Sector I)
i: F"ioppv SutlFunctiol"; :li
'I 4,
it """ "_"" _"-____ _" __mt -—-—4·
)) Enter: Hi- =t'éÉ.t Butter Addresí )) Exir: E, =O, Zero Set (,ZJ 'f (jP': i|
|1 eT- 1{Uoppr C': vvet") )) <> t?, NZ if Ei"rcr li
li c"- 7{Subturictiori #) ii I!
))' lUses: AF. HL I)
i) I) NOTE: Subt'cns 0,1,2,4 &5Neecjei li
m-—- ii l)
"ihis subt"unctiorí Reads aphysical sector of data ÍJOlTt the selected cfj"i\"c ani
places it i:í tho buf"ft'r cíl the specified address. It is imporrarít that an
appropriate iy sizc·d buti"c·r is provided for this: task. The \'"ajuc iri thc --',
rezistcr wi ti indicate the success or failure of the function as iridicatc'd iti
-
thc: aho': tchart .C)ñj\' the .aj" ancí HI registers rrtay bu altered by this Í'un.c-
tion .
NOTE: Tlii :-, funct ion recjui res, that Subi'unct ions O(Set Read/\Wi te Mode ).i
(Ser Disk Motor Parnis j. 2(Set Head &ljrive), 4(Specify Drive Times) and (l
(Seek Track) be cal leci Í ir:tt in order to establish the physical and io?ica¡
cíIaracterisLic: 6of" thc' data íransfcr.
39
PROGRAMMINS B/P EllOS
!Funct ion 31 (XX5D) Write Floppy Disk Sector )
'Floppy SubFunction 8i
i
lEnter: HL =Source Buffer Address Exit: A=O, Zero Set (Z) it Ok )
iI
lB=1(Floppy Driver) A<> O, NZ if Error
lC=8(Subfunction #) l
lUses: AF,HL
i )
lNOTE: Subfcns 0,1,2,4 &6 Needed
ti
This subfunction writes data froríí the buffer beginning at the specified ad-
dress to the track, sector and head selected by other subf"unctions. The val ue
in the Aregister alom with the settinµ of the Zero Fkmz will indicate wheth-
er the operar ion succeeded oí" not .Onlv the AF and HL reruisters niav bc- ai-
-
tered by this function.
NOTE: This funct ion requires that Subfunctions O{Set Read/Writú í{L)CiCi .1
(Set Disk &\'lc"tor F'artíísl. Z(Set Head &: t'rire). 4(Specify lji"ive Time: -j and ¿-
(Seek Track) bt' caí iecl f'i rsi in order to estaM ish thú physical and iogical
characteristics oÍ' thc data transfci".
)1
Furiction 31 (xxSE ;i Read Disk Sectcn" Ib ))
)) Floppy SubFunction g
,j!
))
)1 Enteí_: E. =1(FÍOIXW ljriver ,' ,, Exit: A=O, Zero Set (Z) nC'i'- :!
li C=9íSu3function #:' ii A<> Ci, ÑZ it E'"rcr ))
l' 'i li
if
j! l) Uses: AF !1
)1 ii NOTE: SubÍ'cns O & 2Needeá i)
j: -- li _,- -_= J:
This Subftmct ion Í"éaá-< thu f'j¡"f.¿ correct ID ini'ormation encountc'reí ori ¿¿
track. There' arc' no entry parameter.s for this Í'unct 1(7!_1 other than the Drivcr
and SubÍ'antn ion number. .", fiaµ is returned indicatiñ? whether or not errors
occurred. An error inciicat€':4that no recognizable Sector ID could be read
tho disk. Ir Llío9,t cases. thiu is due to an incorrect Density settin? in the
Rios .
NOTE: This, function requiTes that Subfunctions 2(Set Head &' Drive) and 3
lSet Floppy Disk Mouel are called first in order to establish the physical
characteristics of the disk.
40
B/P BIOS PROc¡RAFlMl NC
ll
lFunction 31 (xy,5')) Return Floppy Drive Status l
'FIo?Fly SubFunct ion 1C!
Y
Enter: B=1(Floppy Driver) Exit: A=Status Byte of last Opn)
C=10 (Subfunction #) BC =FCC Controller Type l
HL =Address of Status Byte|
lUses: AF, BC, HL
i)
'i NOTE: Subfcn 2Needed ii
l¡j
This function return: ", Ur? status of the currently-selected cíí"i\"é. There arc
no entry parameters for this function other than the Floppy Driver and Func-
tion number. On €'xit. the ra"ñ' unmasked status hyte of the drive. or the ]¿j;-¿
operat ion depending orí the contro} ter type. is returned along with abinare
number i'epresencim tiít-' T!J""' corm"ol Jer ij"pe le.sz. (S, 92Óó. ]""2. etc :.
NOTE: Thi "; rout inc ajzsuIl|c'y, that Subfunct ion 2(Set Head c\' í)j"i"\"c )iíítfS Mun
cal lee! |}ct'c)7"e: ' thi srout inc iá) sl^ ic'ct the Physi cal Paraníeters.
T""""""""" __-_ _"_""í;
li Fur: ction 31 U'ú5!j'l Format Floppv DisP Track )',
e;
li Fiopm' SubF"urícticm 11 i)
i: ,
ir" """""' "'""" ""' """ "" "T__d'
LI
ji Enter: Hj »Poir,te: "tcj Lja'.a B"!^CÍ·j) Emt: A=l", Zero Set (Z) it (: }i'. li
t'
ii C=- #of Sectoi"s/1"rack li A<> C', NZ Errcr ii
I) E=#ot Bytes. in Ga> 3li ))
)) ll =1(FioiXW íu"iver) IUses: AF,BC,DE,HL li
;) C=11 /SubTUnctiDn #) ii NOTE: Use Subfcn 10 tor COi"it 1ype))
This-: SüÉÉ twícticú: ÍDrn,: iti>, ,: complete track OIl one sick aFloppy !"ñsk. !t
assumer-, E)tíU the-- )bác .HC'¿í{i,/¡)l"]l"C'. Track ,and Sector hare alreacíy becn ;j.G'í .
On entry. Hi. pc)!ntg l(-) data required by the controller to fornmt atrack.
This wzj"icú, bet"ñúen c(")ntr()¡]ers, so RETDST should be called to detertjíi: íL'
cont rcl ter type beíore sett iÍi/z up data structures. On entry, Drl1ug>t aÚm
contain the number of Sectors pt'r Track, and Eniust contain the nuníber o!"
bytcs to use for Gap Jin the floppy format. Orí exit, A=() and the Zero flap
is Set (7) if the operation was satisfactorily completed, A<> Oand the Zertu
f\a;z clearc'.' CZ )if' errors occurred. This routine niav alter ail pr iniarr
.
register: -ti\F j3': :,r)í-,Hj-).
NOTE: This routine assuníúú that Subfunction JO (Return Fioppv Drive Stau-ii,i
has been cal led first to determine the Controller type and insert the corre'.:t
inf'ornííu ion in thú Format Data Block.
41
PF?OGF?AMMINf3 El/l" E3lCS
HART) DiSk SUBFUNCTÍONS.
These funcr ions are ami lable tíj direct iv access, Hard Mires connected M" ¿,
SCSI type interface. They are accessed by loading the desired fúij'3t icm nunibt'r
in the C: reµister. ioadinµ a2(SCSI driver) into the F$ reµnster and c¿i: !iní
or jurrlpin,a to Jurnp number 3i in the Filos entry jump tablc. Since this iníej-
face is not as standardi zed as Floppy funct ions in order to handle SASi as,
well as SCSI devices. the interface has ortiy basic functions with the' precise'
operat ions specified by the U"se: rin the Command Descriptor Block passed v: ith
Furict ion :í. Vvhilé thi> places aµrc'ater burden on User programs, it allows',
more fJexibi ]ity to takt· advantaµc of' changing features in the ñé\'\új" ,St: Si
drives.. "
)Function 31 (XX5D) Set Hard Disk Addresses
)
)Hard Disk SubFunction Oi)
(J)
IIr
ji Enter: DE =Address of Data Area lExit: a=#Bytes in Comnd BÍock i)
il b=Z(Hard Disk Driver) Il)
Li p U
li C. =G' (Subt'unction #) iUses: AF i)
t L
This Subfuncíiún S,Útri the Lscr F)aí,"í ,',Tt: cz Addresc, fcjj" Direct S( S'É i'.: .ünd
returris the nul")}i_}c: rtjf !"/"\"í ttS> á"\"íii lab le in tht' M S! c'ornmancj bcscr iptor Ti.!()1'i..
j"ñíj' Au ¿j .\rcm niu '::ij;j' :\. r L7AS.I SiZ tn"tt"\' ion; and j;·j ust-"cl to snore ckna fo í)g
wr ittéTi. a:i líC: ' !"¿ct'i\: L"! \it"Z'Á: í rt'a'.i f' T'Olíi tM>.L"lc7ctc'(} dí"ií"e. Tiíi.'> )kíía :',:"L·i,
s: i:':e ig-t iÍi¿í!}'"i¿ítol"y m:ií-í- 51 2 hyít> áj"'j álv: áy> rt"turncci from adi rect a¿-cÚ>,: ·z i:i
ordúí" to h:z:}:.¿lL the" \\ nz' ","m' it't\" c\Í coníro! lei" 1j'd€?b recQgnize(j in Ur- !"i/7'
TÜc1'·- íj."i\"¿|: ?. Thc rlU|llbe} of hyíe> á'j: ii lab!í' in tríe' Command ¡'escri!)l("][" hioc-'k
"Y',"iL|"íir! Ü'!l. pi]i": t,;c:íl {!7'i',"¿'[' i:-: u>u¿!!l\' 1() it\ orckn to hancík" thü ey: ¡-cn,"t¿Td N-S-l
cQti|íl]alídg,. but Lii': ji"-' ScÁíic: í' !"míj: tc:)(J in jiR;itLd applications.
t,
r"" "Dj
,1 Function 21 í; y:g:"l[/,) Set Phyeical &Logical Drive 1|
ji Hard Disk SubF'unctioti !i
i
'l "l______1
)Enter: A=Üevice Byte (5.2.1) iExit: A=Pnysical Device Bit l
i: E3 =2(Hard Disk Driver) ll
)) C=1(Subfunction #) )Uses: AF )
This ,Subtunction sets the Physical Device bit in the l3ios for SCSI accesses
and the Lojzicai I'nit ,I'umber in the SCSI Command Block (Bvte l, bits "-Si. The
format of' the t: wrice Byte prouided to this routine is defined in the Conj 1,!2u-
ration Dara. Sect ion 5.2. i, (:O\'ríCr+6]. and is available frcmi the Extende': í 7)ish.
Parameter Fieacic'i" lit bPii--l ,()ri €'µ.itin? this routine. abyte is returned with a
"One"' hi [in the prom: [" po: , it ion J"(! ["=OÚ\"i Cc· ". ..Tsit U=btiu"i cc- "i1("7
seic'cí thc: ["iC'.>li¿-(.: 'j'íií \"j¿j aSCSI conitüarí'".
42
E! Ip BIOS PROGRAMM!P!('
Ii ,
'I Function 31 (xx5D) Direct SCSI Drivex )
L
iHard Disk SubFunction 2
l
!l
lEnter: DE =Ptr to Comnd Desc Blk| Exit: A=Bit1 Status, Flags Set
A=Oif No Write Data H=Message Byte Va)ue
') A=FF if Data to Write L=Status Byte Value i
E3 =2(Hard Disk Driver) I
C=2(Subfunction #ilUses :AF, BC', DE, HL I)
l!
iNOTE: Subfcns O&1Needed li
This Subt"unction peri"orm>. the actions requireci by the conímand in tM' s!)é-'cit'¡t'.!
(":omt?¡a{")d be>m"iptüt" l'íioct:.The flag provided in Reízistei" Asií'niíA':'wñctht'r
.
or ncu u>&i data it: to be "ñ"j itten L)\" this c.ontmanü. II sin lc' ¿j !\"oI]--: 't'rL:'
\C:jLlt'. Tkcec. frcm the ;ii"td -jj'éciÍ ic'c! v\ itn j'unct ion () v\i i! bt' poci tionc"ci fí'i'
SCSI 'v',;;j Li' opt'rat ions- .'It thé-: end the' roui int .512 byt C'b ¿2j"t-' a!íí'ay>: trim: ':-
É'c!"Tt-¿j f]'.c):l: the hio.> IO hui'iÉr to the' tt--.crs. Space set by Subfunctínn O. Thi u.
Tlki\" Miric'ff ic'].'?T;[ .b"tíí ".':."i:· Ü"il only v\"á ," kc cou id accommodate ths-' \'\"icic \üi! leí i"
g\i ciif'i'í ;'-·:zí S..'\.°',i ,/s' i.! corn ¡'"Qi íeu \'\"i tliin reayional)}e cQcié constraint".. Tlit:
:-.1 ,: 1 u: ]"\·t'L!!"Í]'j.: 'í: íc:(}[ljj3!Ú1 to: : of t5i:', function is the Staius bvtc· niaskc·t1 v.itij
Ul' l(C EíÜt. J'U iTA- t"tj i]S: atu" Ñ\ [ear'"! í\ícsqa"c' Í'\"té f':roni SC'fí ope"á
.
i¡("kTí'·q att- ¿ií-jí· l'r('í"lcjL('l for r'kít"g: Cit--i tmtion any errorm
NOTE: 1"iíi: -, Tüt: t1¶(- ¿L:-,>u7:jt-7 that tiiú (:O!1]I[¡¿ij]{! bescriptür Block has l}etj-[1 prof"'.'r j\"
c'(';:¿'ig'L$1"£'(-j 1("; iii: -type' t'f" }j¿¿jYj Tns.k Ctmtroller set in Fl/P Fnos.. anti that LÍ_!c'
>t'icc-üA diü- ].- l'rorÜri: b" cieg;c["ibe('i {i! ñéCébSAT\7 irí tm Iiio: ' ín.: '- CiCiñii-
Ti ioñ:,. í".ri_Q t": - in pña>irrz 1e">uÁ in r1"Q?rari: exi tand \íarm í\ocn .I'l a:-,".U!ino.
L.-
tPm user has cal it:jFunc't ions C' tSet ilaríi 1)1 ::.1. AjdTe>s¿j,i a: mi;>-É-"i ]"'j"g\"> ií:
1\ i.("jg): ¿i: !'rj\_L";! tícj(")!"L' u>íég2 tt'is Sui)lu!"LÚ: -1L77í.
:-=ji
I) '
FLÁnct1o!"', :J," í>: y.ó':j} Set Bank. Tor Far juínjj'"Ca! "{ jj
Uth
i6- --- ------ ,: -- '—------ -----::
)) Enteu: a. tDem rel Bani-: Number )| Exit: None. I)
li Uses: No Registers
l| Ii
This Iunction sel stM bank nuíííbt-'r for alater Function 33 jump to aroutine
in ari a)tern: íte )ieniorv Bank.
43
PRCRRAMM!NG E/P PíOS
ii
Function 33 (xx63) jump to (HL) in Alternate Bank i)
l"__=__— "m|j
Enter: HL =Address to execute iExit: <Unknown> Called routine li
in Bank set w,/F'n 32 !sets return status i)
Uses: All Primary Regs (assumed) l)
This Function switches. to the bank number preriously specified with Function
32, then calls the routine addressed by HL. Upon ccmipiet ion. operat ion re-
turns to the bank from which called, and the address on the [op of the stack.
It ti
I) Function 34 (:·:x65)
!1
Clear Stack Switcher I)
ii Enter: HL =Acid: "to resume exec ii Exit: None. Execution resumes li
l) in entry bank. li at acidr in HL in entry bank li
ii li Uses: No Registers ii
|í ||
_. i
This Funct ion if', u",üc! Í"(j"/" error exits front banked roat incsí to rütum tizt'
ent ry bank.
ii "" __"""__" "_ __ __"-_ '__ "_ "" "" "":)
ii Function 15 ': xxb? ;' LOáCl Á,(EL\ from Alternate Bani- ii
(' pq
im --_- ____jr=." =====: =_ _- j
r'
li Enter: Hl =Aá':lr CA ciesireá bvte I) Eíit: A=byte ft"o1": C:HL l,
I) CX- beíire'i Eani NuT;be';" Íl li
jl li Uses: ÁF if
i__
li
__ ,,__..!,
li
This Funcr io: i;-'é't: at";"íc l' ¿.-'-7jlt: ."í'roit tí\t- specif ieci Flan!'. anti /\dcn"es".. "í"l":t
bani i,¶ tenI!'<)raTij:í" s"í':"iích-íi ::: CÍ-)[}tC?,t tCif the access (it requireú' ,tii .'r.
restored iq t)7íi"\" cQíÁi tiocí·-. 7ntc'rrupts arc' temporarily disabled dur irw tht--
brief' accc'>;"1 [i!!i4'.
6"""" "" "" """"" """ li
ii Function 35 (Xx6C) Load DE, (HL) from A? ternate Bani-. _li
Iii I!
l
Enter": HL =Aácir" of desired word I) Exit: DE =Word from C:HL li
ii C' =Desi red Bank Numbet_ I) ))
b'
li li Uses: af,de i:
i—Ji l,
T'riiq i"uncíion gets, a\"mrd lló-bits jfrom the specified Bank and Address. TM'
ban!: i stenírc)ra: "'i ly s"ñ'i tcheá irí context for thtz accesg. liirequi red) .tMt"i
rem: oreci Ic) cní ;"y coriíii titj'i: -,. !nterruj"ts a: "e temporarily disabled durim 1J"j¿.
ijj"it"f áN'cc: s:'- tjí¡;:.'.
4A
B/P ElOS PRC'GF?AMM!!QG
!i
'Function 37 (xx6F) Load (HL),A to Alternate Bank l
r"!l
Enter: HL =Adcir of Dest Byte Exit: None. Byte stored at C:HL
!C=Desi red Bank Number
A=Byte to save at C: HL Uses: AF l
|!
This Function saves a Byte (S-bits) to the specified Address and Bank. The
bank is terñporari ly switched in context for the access (if required j. thún
restored to entry conditions. Interrupts are temporarily disabled duriñ? the
brief access time.
l)
Function (xX7Z) Load (HL),ÜE to Alternate Banj" i:
.¡I
li li
ii Enter: DE =Word to Étoré at c:Fh-jj Exit: None. Word stored at C:Fii i
l
I) Hl =Adár cit Dest Word )i'
|l C=Desireci E3.áñrí Nu¶be!" iUses: AF j!
l| —___ .__,
;i .__-_ —r= —- ,_,, ._,_._ ,. _ , _ ,_ :':
"i iii> i"uu': 2 iori g;;y."g"g_, a'L',jíj"j ', ¡'.\-ljiEt",l tc/ the yje'¿-if"i€'cj Acidresg: í-mtj har#: .Th:-
bank i>. teFll!)(")!"¿.i N;i" jT",'.":l'-'!íi'·i Ill ccmít'\"t iort!:c ÁccéÁii ';j;' rt'¿!uijt: :{lj. thurt
rt."-j',i"rL-\: t'"" t':Ü.i"y c': mcí. ticm ,¡p(€'! íams &1"(-- tenipc'rai"i!y ciisaiüeúi tiurin 'üic
'.IG
lr—"_ -" _"_ _"_" __'" ;i
j) Fu!' ctiQ'": 3'F' ¢í> '[l :' Return Currer'rt Bank in Ccr: te>:t ,)
)í_
--- -— -- li -—---—-"—i
I! Enter: Noi"e !1 Exit: A=Bani'. currently active li
L'
li jl in Addi" U. .7F"F'H i:
|i Uses,: AF l'
(,k ft i,,
-—--— —- -—-— ===== li
This: Iunct Áll"i returns. the jterííory Bank current ly in Context in the adcire: 7:\
ran,c:i: of U.. Hit!. I'. nía': Museci in ÜJf" "where ani I" role in appi icat icrí
ljrc)?ran]'·} 'Lo track nlerlj()r\" accesseá.
43
PFKY3R!\MM!NC- £?,.'E' BiOl
5.2 Bios Data Structures.
5.2.1 Conñguration Area.
Much of the abi iit\" to tal Iq!" FS/i' Fsioses to your specific opt'rating neecí.s is
due to the standardized location of many discrete elements of' data, and a
facility to easily locate and change them regardless the particular hard-
ware platfortn in operat ion. Bio"í Function 3(), Return Bios Addresses. reports
the base address of the Configuration Area in the or register pair. In this
section. we will review each of the specified elements, their functions, and
which part5 of the" clara ruust be rigidly controlled to insure that the supplieci
uti lit les continue to function. as well as guarantee the portability of othe: '
programs .
CONFIG-6 -Bios ID. Character String, 6bytes.
This character string .MUST bezin with the three characters "B/F' in [}ppcrc&: ,t-'
Ascii .fol lowed by three \"ers;ior!-br)ecji"ic identifying characters. As cjí Ida rclí
1993, the foiiowinz" icií'nz ifier: -: hm'c' been assitzrm! 'Iq systems:
"B/P-YS" YAS!M."
"B/P-AM" ¡\R"ír'!"L"' j-. it tíú T3üarí! }¿)()
"B/P-18" '\l}cro!Yllnt SF-lSü
"B/P-CT" tjompu ,/] iriíc' SíÓ() Marcí Set
"B/P-TT" itjc'tck
"B/P-XL" intei li,zcnt corripuíc'r L)esign> Sj-í\ij>'.j
CONF1G+O -1OBY"ÍE. Byte.
This byte contain" the init iai ciL'l"jr}íri(]r. of the byte pla'n'ci ¿if ot í·,t t. .'; (ji)
the' Lsau.c' f"ác!c ('Hi',' l!! :du: int' a('o j cl iSc\íj\ á!"lC! (i€'teÍmli!€'sí \\"íii c-K jj; tl"ít ii.)'.! i
M-
cic'í' iné-'d c'hm": i -ic': u.' cit"\"j ¿-tj :-;J ',', i i jDc tise: i¿t". the Con.sol t' ,,^,ü."\ }lií: r'" ¿Áñ "' !'i" l'tt --
e i" ctc\"ic: é". 'Flit- (itj't au U,°Á-'t Linµ my he' a! tered h;." FSi'('"\"!'C7 '.i) ]"t- i' !cíi cl]..írl,L'L't!
cit'\'i cc" ccv\i)i µuríu zon'-.. c'r 1'\" re¿zssL"'T;í]) 1\" (: i', hc ¡s Iq-,.
The' bit dL'j"il"!l[j(3!1~ iri tíÍis\ 1".)lc Ui"t:
Bit 7 6 5 4 3 2 1 O
i[Console Device
lAuxiliary Input Device
Auxiliary Output Device
Printer Device
CONF }G+1 -- System Drive. Byte.
This byte containg, th't c!ri'ic which 'Á"i ii bu acces,süd aftür aCoRi Fsaot CiñC .i -",
assumed 'Lo contain the ODeraEinµ S\"s.térñ files. It is ?1 binary ralut' wherc .g". =
O. is =]...F' =IS.
4t3
B/P mos: -pRm!2AMM!k!c
CONFIG+2 -Bios Option Flag: mByte.
This hrre consists oÍ' ir]cii\_id'ja!]\" mapped bits which áisplar which cpzions art'
act ive in the asst·nibleci Rios: .The' bi t,': listed, as <réserved> should not be
defined wi thout prior cocü"d inat ion wi rh the system deu"e!opers tCÍ precluck'
coMí icts wi th planned enhancements. The bvte is currentlv def'ined as:
- .
Bit 7 6 5 4 3 2 1 O
IO=Unbanked Bios 1=Banked Bios
O=Bank in RAM 1·Bank in RCN
O=DPBS Fixed 1=DPBS Assignable
O·ALV/CSV in TPA 1·ALV/CSV in Bank (ZSDOS2)
<reserved >
The next firc hyícs: define the memory riiap of abanked s\'stéñi in 321: siictj'í.
For acomplete desci"jDtiQ[} of' bank allocations. please refer tcj Section 4. It'
non-bani: ecl sys:tí'rn-.. ai lexcc'pí the RAM Drive Bank sMu!d al! be st't tcí (}. !f
no n}ellit: j1"\" ii ¿f\"ái i,'ít'ñt- Í"c4 re-axsi;zríntent aA aRAM drire. this: byre a.'" u't: li
should be ;,ít--t tu t).
CONFIG+3 -User Bank. Byte.
This T1\"[e· ref"lecú y; í-fjt; Fi: íñl- riunihc-r reserí"ed for L"í,er Appj ictit iQÍás.
CONFIG+4 -- TPA Bantt. Byte.
This, i-\\"t ere!" jtj·gz .4 tiít.' Ts:zn?. nul}1!"")Ú :" reqc-r\'¿"d for úhc" Trans'. icnt !'rQgI¿"jl: íÁl"': a in
the cicicir"t: "."- I"¿íAL't- c:il). ."íi!"i!. I! !"iC ñc\ lsequent la! bank riur'.ilx"í" ^n(:I"l'il¿íll\'
the' (' omnion f- ,';j"7 p¡\j"t,Ü' ¿";i"\";'¿'"', rum ¡i"; ] n("cmt '"'"" 'L intI)z' a(i("1rt"'-" is ' ! ¿jrµ"'"
.P
;"jj{)()'. .i!"' t'!! ¿;;j,j í': mri. ::" ti:. ".7Cj'¿j!. }')l" S: \"6tE'íÍí. F\icu anü /.-Sy>i€'í: :1ai_ucs.
CONF ¡G-t-S -- SYStem Élan 1<. Byte.
Th i;i }"'\ú f' I"C'!)í.·/'[j 'lit fí¿¿' ':- nlj: '1}"'t' rcY)ní"¿jL]')in: any tn: ecuíaMt' ¿1"jül íülc"! :i,xi ::
SPÚCÑI ju'j 1"()1" t:íc S·\"st¿'líj Parí .
CONFIG+6 -RAM Drive Bank. Byte.
Thi strjú: ref !t,'c txttí·j :-ítár' !- irw iuní: nuníMr á\"c: itable' fc'r usc' cit a!::A!\: !j'r !',"t .
It iS as $Uñlt-".: Ui.ü c:l:7..Aú! froin tÉi simri!: trlrQuszn tne Ma):in¡'jI!í: banÉ k"umlx';" i:
cont if!üOúu anj á'\"¿; il:th!t ii: "ii KA.'$ Pr i\"€ .
CONFIG+7 -Maximum Bank Number. Byte.
This byte reflect:-the j"lu[I"l|)t: rQt' the' last available bank oÍ' RAM jTl the sys:tení.
In manr systems. it I}íay bc set to different numbers depenc]jr)? on the number Of
RAM chip> instal!t^ci 11'! the symem.
CONFIG+8 -Common Page Base. Byte.
This hytt' reflecrs, the base Page' of" the Common area in systems which cío nut
fui Jy comply with the 32E. M: ±mory Banking architecture of í3/P Bios. but can 1)ü-'
rííade somewhat conípí i¿1nr .This Ryte rrtust be AT LEAST 80!1. but may be hipher if'
needed.
CONFIG+9 -DPE Size. Byte.
fÚíiÑ byit" cc}n[ai11" íñc' lensñ: hC.! bisk Parap]L"rer Fí!ocÉ. i:!locations wichin rhc'
F)j us .Sina.' ns'rc' inf'ormt jí;q; :>neecieci than the IS hyttíí: ', defined by íjigiLc"í!
47
PROGRAMMING B/P BIOS!
Research in CP/M 2.2. an ex"ten,ied format is used. Alf re-assignments ol i)isk".
Parameter data should use this byte to deterniine the size of records.
CONFIG+1O -Number of DPBs in Common RAM. Byte.
CONFIG+11 -Number of DPBs in System Bank.. Byte.
These two bytes indicate the complete complement of Floppy 'Disk formats arm l-
able within the Bios. In most cases, one of these two bytes will reflect a
zero value with ali Disk Parameter Blocks resident either in the Cornrüon area
or in the System Bank. The provisions are available. however with these two
bytes to split the definiUons for custom versions without voidinµ thú support
tQois provided.
CONFIG+12 -Pointer to first Common DPB. Word.
CONFIG+14 -Pointer to first Banked OPEL Word.
These twü words poim to the firsr ljPi9 in asequential list vcithir. thc- respc'c-
tive meinory banks for Disk Parameter Blocks defined in the precedinµ bytes.
In most. cases one cñ' these' tv: o word: t v\'i li be aNull pointer ((J'j()(/til corro'--
sponding to no elata as descriheci in the count byte," abore.
CONFIG+16 -Initial Startup Comrríand. String.
1"hir sñrinst cL)tíLain> tije t'írm coniniand xhich will be initiatc'íl on a ('oÉcl Mc't.
7ti"ioadt'ti into the Vu jti pI €" (-'QRlHlar)(i Fufíer cief'inc"d in the F.nri ronmnt
ikscripíor í.St-t 5.Z.4l and cal!> afile of' the specified name with atype' Qi
't.'O;j" .Thu :'ht.{jI}:: tíiay hare un to eiphr characters anA must be !\ul l-tc'rUnateci
i€'ñcí íi"nh aF·Jnary ñ). Tííe sjrinsz is defined a:'.:
Byte -Number of Characters (Ü..8)
String -93 bvtes to" Ascj characters íusuaily Uppercase)
Byte -Terrrñnating Null (binary O)
CONFlG-i-26 -PoinÉer to Environment Descriptor. Word.
This: VY"Oñí point" to thc first byte' an e>: tent1ed 7.34 !in\"ironDÍt: nl v\"ñi '::'rí '.j: . 9jJ"
becñ !7 on a Pázti: hcunciarr ': XX()C)i! j .Set-' Section 5.3.! fen" acomplete d¿'xcrir-
tiQñ of the Éñ\"i ronníent r)Us.cri!jí(2r and FS/F' bios uniquü teatu: u:s.
CONFIG+28 -éanked User Flag/6ank Number. Byte.
Thi 5!'iytc: ñí7í\' I)c uscm aí, afkií' to indicate whether ar ñc\t aI'st-'r ísajíf. ::-
clef iñ€'ci. bank (.' c'annc't bt-' u.seíi ¿'jg. aLiser bank by decree Qt the syster!: au-
thorm Thet"etorém if this: byte contains abinary O, no User Rank is avail-
able.
CONFIG+29 -Pointer to Start of Banked User Area. Word.
This word COñtáM< the address of the first available byte in the Banked User
Area ,if one' é?Ást: "í. Routines loaded into the User Bank should contain a
standard RSX header s'tructure to link sequential programs and provide aprirü-
lire n}errior\' n1ana?eInent t"unct ion.
CONEIG+31 -CPU Clock Rate in Megahertz. Byte.
1his byte níust contain the processor speed rounded to the nearest Megmhertz.
It may be used 1)\' sot"tít"are [irilir)g loops in application arid uti jity pro?ranis to
adapt to the clock wpc'ed of the ho.st coniputer and provide an appro: íiniaíi- [iútt.'.
48
l3/P BIOS PFKT: RAMMiPiG
This byte' is :"c"f¡ectt'ci in the: Enrironnitnt T.)z:scrirtor (.SaCé s.z.m as Vyg·|] ft"'j'
prograrus vchich are 7-Systení "ar.arc' .
CONFÍG+32 -Additional Wait State Requirements. Byte.
This hytt: is "nibbÍe-@1¿ípp€"(i" to reílec't the number of wai [stare: ', nt'í-ded to:"
memory anti JO accesses when these funct ions can be set via software. In the
ZSO,/Zl8(), JO port accesses have one wait state inserted within the processo:".
This byte does not account fcr this fact. and reflects wait states 11\' ADDIT'ÍOY
TO any which are built into the hardware. For older processors such as tht'
ZSC: '. thc.ze bytes no7"nlí-lj iy hm'e no ef t'ect since additional wait states must bu
added wi tb haTd"A'¿ire .
CONFIG+33 -Timer Reload Value. Word.
In níany sr'stewm Interrupts or Tinier values are set by sQf"TK'are-conf'iµuI"cLrt]': .'
c:ountdov\"n tinít-'rs. the ]()-|")_i tvalue at this locat ion is reserved for sett im'
the [imt'r \"á lúe and 1Ilá\" be "t irte tuned' to aikw the syNten] to rüaintain cor---
rect t"iiae in thc' prt>crj¿'{- Qt clock frequenci.c's which may dc'i"iate frcmi dtl'l i.>í
i"requenci es ñeí"utúí Í(j!" acc'üraU-' ñoCÉCÁ.
LONF lG+35 -Flopj: 'y Disk: Physical Parameters. Table.
Tlíi:-, tai.lt' con>i",^ oi' Í()üi" 5-M"u-- tmtries-, which conrain in!orniat ton OTi Ur' 1('8
fc'ci" !-'l"ly'i¿'rtl Ciú\"e>. '.ach C'ñíT\" i:.cÉ'fine'ci as:
Byte O-r'i"(}"\-ici'-'·í Mt:-,t' 1"("!" !j)p¡j ñ\"Zt: .i3i tmapped a:,,:
Bit 76 5 432 1 O
IitiDisk Size 0OO=Fixed Disk, 001=8", 010=5.25", 011=3.5"
O=Single-Sided, 1=Double-Sided
i<reserved>
O=Motor A1Hays On 1=Motor Control Needed
O=300 RPM Max Speed 1·360 RPM (8" &HD)
<reserved>
Byte 1-- SF¿'í; kit in Ri'Í J; lsec'(")n{: .6.
Byte 2-l!í ail i..oi"zíi 'r.i Hi'f iri miiíseconds..
Byte 3-ik: ij t'r}j(}aíl Thin' irí níilIis.econc]Á.
Byte 4-!\"uIíll")t'j_ cji 1raci:i: (l \"} ináem )on drive .
Those bi'ñ> iri Fiyíe L) 'ñ"hich are listed as unused must be set to Usince íhíi
byte' pro\"icic'7 the' inir la! value stored in the XDPH when assipnab le drives ¿iú.
used. For c'ontroAcrs \4"hic"l2 do not need the available i.nforrrtation (e'.?.
Western biNza! controllers cío not need Byre 3), these values rriav bt^ set to
any artntrarr \"áiüc'. but JÍI ST remain presúnt in the structure to prtn"tu:r
changingt subsc'guent adcires"jst: :",.
CONFIG+55 -Motor On Time in 1/1Oth Seconds. Byte.
This tiñ:t' I1tá\" be' used in sonie rypt's of F'lopgc" Disk ccmtrojlers to keep 'íht-
drire rríotoí"s spinnim for aspecii"ied time after the last access to avoid
cIt-" lavs in brim ins: t'hc syindie ud to speed. Some controllers. notabb" tht:
\\'e'snerr T'isÑta! !"ü: .x and 19xx series io not support this feature. In thiu
C'á'·t¿'. z"l"ic' Íj\"! e }}}¿}\" Msei. tu am" arbi írary value. bin MUSÍ" i"emin prese"n't .
49
PROGRAMMING B,/P BIOS
confíg+56 -Motor Spinup Time in 1/1Üth Seoonds. Byte.
This time is thc delay which will be imposed by the 13ios before" mneiñpt inp to
acces.s a Floppr" ijisk drive when it senses that the motor is in a.stopped
condition. F'rouidinµ such adelav will minimize the probability of" data
corruption H)\' m"itim to disk which is rotatinp at the incorrect speed.
--
CONFIG+57 -Maximum Number of Retries. Byte.
This byte specifies the number of" attempts which will be made on a Floppy Disk
access before returning an error code. In sorne cases. such as diaznostic
programs, it may be desirable to set this value to lto identify soft errors,
or ones which fai lon the first attertipt. but succeed on a subsequent try. \4e
.recommend avalue of 3or jbased on our experience. Larger values may resul t
in inordinately !onµ, delays when errors are detected.
CONFIG+58 -Pointer to Interrupt Vector Table. Word.
This Word contains the address of the base of an Interrupt Vector Table whicñ.
when uxed. ccmcains po}nteTy) to se.i"rice routines. The precise definit ion oí"
the table is nen stanLiardi7e(! and niay vary considerably bctween systenc,. Thi s
poiníer serré" Ljr}i\" to proríc.ic' an easv and standardized method of loca': ing the:
table for Te-def'?nit1Ün of' sejl'\"l¿'ey) or system features.
CONFIG+60 -SCSI Controller Type. Byte.
n' ac: coRini(7(i¿1[€' tht.' \'\'iát'st varieíy qÍ' di i Íe'rent cont rol Íél"g includín>" Illt' oitic'r
sasj rnc)(j¿'is. thu byte is deíineá a:icontaining: abyte cocie to the' s,pc·cjf'ií
mode lbe jñ,? u.mí'c! .Iii lllCiST Cá: -:t'7., this byte has little' .it" any étft"í't '¥{'i¿i]!f:
the: íiios: ,but may hm €- >icnií"icanr úf'fects orí Hard bisÉ. Diagno: _-t !c pr(')µ["¿¿!: i:-}.
or [:ser-(ie\"el()!)€'("i Lit tÚílC'S. Arj adí!iuons Tl) ti"íj$ íal>!t" should bt- c'()c)rL: !!l,¿".-
ed with the authcirs tCj in,Fuj"L 'haz ihc s.tanciarí! suI)poTI' util ii ie" c'cir: ij:j'.jc [.('
f'unct ion. nrrent '1ti'ir]iliol)g ¿j['s-';
O-0\'\' !
l-Ada!"'t¿ CA' Ft-4[}"l!'i.!
2-Xe'!)'--: :"' j4l':).-\/h!"}'d£",:i!"t i(fl¿: -·) :s.í\.$3!j
3-Semtme S("'SÁ
4-Shuz'art" !m'"'--l (Mu it"tü'í l SC'S t sÁ!hs{'T l
5-SnÁiI"-E í: ':e",": e(_'(jl"lnf·'! .l.)uanLuR: aria ]Y(¿"¿ítC\í' dr i\'t': ·: ,t
5t)
El/P BIOS PROGRAMMING
CONFIG+61 -Hard Drive Physical Parameters. Table.
This rabie comists: of three 9-Fíc're entries defininµ up io three physsicál Hard
bri \"és. V\'hi le the SCSI definition allows for more units, three veas considered
adequate for rrtout system. It" addi t- ional dr ives are needed, pI ease contact
the authors for methods Cjt' including them without inval idat ing any of tiii
standard utilities or interfaces. Each of' the three entries is defined as:
Byte -Physical and L.opical Address as:
Bit 7 6 5 4 3 2iO
I l IPhysical Device (OOO-I10B, 1IIB reserved for Host)
<reserved>
O=Drive NOT Present, 1·Drive Present
Logical Unit Number (OOO-111B) for controllers
capable of handling multiple drives
Word -Number of" Physical Cylinders on Drive
Byte -Nuníber ot Usable Physical Heads on Drive
Word -tfyi indc-r Surüber to bepin Reduced #"rire Current
Word -("'\'j inCkr Kurííber to be3in Write Preconípensat ion
Byte -Step l·: ate. This bvte rnay either be an absolute rate in :iiS ()1" ¿:
cock' l")abe[i on control ier-specific' definí tion,".
For many c't" tht' nú'nc'r cant 1'"cí] )e'ts. the la:three items ríiay noi jj¿"¿\"t' át!\"
tíít'an: !jl,? in 'F\"hi¿'!] cas't- tñü\" LIiñ j";g' sot to any arbitrary ralut'. :\1s·,o iri ñc'i\'ti"
Úi"i\t""\. rhú rhysic,l! c'h¿"¡.: ¿íctc?ri:Dí lC3 such as the nuníi_)c'r of cy¡in(ÍL-!"j áñii !iL'az"y
rtiay bí" h]c: (jt'n \\i ÚÜe tfíz-' (i!"]\_c· eicctron !cñ Vi·'l th re-lIlaprecl \"¿1 I\k'9. p]"()\" itieú! u"
[hi.' cunt rol jtf 1" \" j¿j \¿f[ toU: ,t,' S: iccmúnands ..'V: . íi'ith tht' iás>t thrct-' £'n: ;_iesL. i:"
tli ÑUt: 4c .t;iC".'\ iitr \ P)L >JL" t[(:a r: .\. rÁrí:'} tI"ái \" va !UC T
CONt' lG-r&! (Reserved Bytes). !1"u.' j1\-tc". ?,[é resiúr':ed for füturt" eµ: t'¿i:1'-, iü: i.
CONí' !G+9 3-Character Device I)e1íniticms. Table.
1)!!" tahie cÜñj i>,ti: Íozu or tííort-- l(7-b\'te (S-P'vte in F)/1-' vc'rsi(}1}y, prií'r íg
i.ií t':Árics t::í'.l ñú-:·',¿ bu' tt.i"¡!'t!n,"¿¿c(] 1)\" aXui! (binary Zero) byu-". Each enti""c
dt'f"ine .tl'íi' !7FÜÍ!t' ¿2'"j: Í c'!)¿¿!"¿qLt€'1"i.s! ics O!' acharacter dtu"icc' in tht.' S\".5téñi. itit'
fj r: -ñ !ü7jj cU" tM:5±' á}"t-' cl 'reci iy ami Jabie for se iect. ion m" tÍ_t£' TOfñ'Tij- as tht'
('U!]: i¿)!c'. Au:':i iiáj y](") arC F·']'Ln[e!'. Cnher entries ínay be c!L: t"ined and exchar]?t"z":
with tb.: iii"'u. lour iq rnakü tMñi accessible tCj the system. The entries are
d': "f irícj as:
String -Four t\scii character Écanie as: COMl, PJOl, NULL, etc.
Byte -bata Kate capabilities as:
Bit 76 5 4 3 2 1O
tIIICurrent Data Rate Setting
Maximum Rate Aval jab)e (Bits-per-Second) as:
0000 =None 0001 E134.5 0010 =50 0011 ·75
0100 =150 0101 M300 0110 ·600 0111 ·1200
1000 =2400 1001 =4800 1010 =9600 1011 =19200
1100 =38400 1101 ·76800 1110 =115200 1111 =Fixed
Al
mP
PROGRAMMING B/P BIOS'
Byte -Configuration lWte defined as:
Bit 7 6 5 4 3 2 1 O
O·2Stop Bits, 1g1Stop Bit
O=No Parity, 1=Parity Enabled
O=Odd Parity, 1=Even Parity
O=B-bit Data, 1·7-bit Data
O=No XON/XOFF, 1·XON/XOFF control Enabled
O=No CTS/RTS, 1=CTS/RTS Control Enabled
O=Device NOT Input, 1=Device can be read
O=Device NOT Output, 1=Can Write Device
Byte -Input Data Mask. Bit-mapped byte used To lopically ANb with
bytes read from Device Input.
Byte -Output Data Mask. Bit-mapped byte used to lo2ic-ally AND with
bytes before being output to device.
Word -Po;nrer to Character Output routine.
Word -Pointer to Output Status routine.
Word -Pointer to Charac'ier Input routine.
Word -Pointer to Input Status rourine.
NOTE: Ílhe last four pointers are not at these Iocaüons in b/F' bios \"e"rsjc)n";
prior to l.i, L)ut. were accessed bu apointer returned bv Bicis Funct iorí i(í.
5.2.2 Disk Parameter' Header.
The ijisk F'm caníerer Header lDí'il} alogi cal data structure required t"oj each
di sk di"i'i"e 1ii a(" F"/M conir'at ií_'íe bi sk operat 1ti2 Svstem. It consi»ts of a
^'
series of eight poin[c'r.x which contain addresses other i'tems needed by the
Í)í),s as we] jas sonie scratchpad spacc. The Address of the IJPH associated v\'íi tlí
apiven cirrve is returnee! by the' l-iios, aÜct: rasuccessiui s±'ie'cÍion \\"itii M(""3
Function g. !Í' Errors occur ciurim selection. or the drive does not exis't. a
3'uli Pointer ((")ÜQC}li) is returned. '
For FS/P bicm. it was necessary to add an additional four bytes. {.Ci each !")Í-'5
which contain addiricmM inforrím ion on physical anci Jogic'ai paraníeiers a',
wel Ias Í' lag inÍ'orrlía[ ioi"i. These adci"it ional bytes art" rc-ferrU ic) as the'
Lx[end€'c} ljP!í, or µJ..)P!l. Whi le similar iri concept iq the extension ackiect
CP/M 3, the implementation is different. The Xl)Pf1 prepenck the DF'H and níay bt
accessed m' decrement 1tis? the returned address. As aconvention. DPHu in Es/l'
.
Filos source code' have reserí'tA ce rtairí label sequences for specific types of
uní tswi th [)PH0(.l-L)PH49 used fc: rFloppy Dr ives ,l)pF!5(j-DpH8g for HarC Drive'
Part it ions and DPH9()-D,PH99 for KAM L'ri'ces.
An ent ire DPH/XOP: -i block is required for each losíical drive in aF3/i' bios,
syst ení. whi le scme pointers, such as the pointer to the Directory Buffer, may
be conirríon across anumbc'r oÍ" drives, for most systerñs, the other i[elns will
point to unicjue areas.
The bPH/XOF'll c' lem"nt sag inde: tc-.i froiü the ÍJPH addresses accessibi eu' apri ica-
lion ].)rc)gr(Lin: '. are:
k
52
B/P BIOS' PR(X'RAMM!!'!C
DPH-4 -Format Lock Flag. Byte.
aZero value indicates th:"n the formar of the disk is not f"i>: ed. but níay I)l-
c'hangeci. It" IÍK? FSicr'. ví'a> assenúAeci with the Auto-select option. the Bios will
scan a number oí" ciif¡'er¢gR[ tormats in order to identify the disk. If aÜFfi'i
value is placed in this byte. it indicates that the format is fixed and cannot
be chan;zed. This is noníal ly rhe case for RAM and Hard disk drives. as v\éi i
as for alien floppy formats wMch hare been selected in the emulation mode.
It" the .4üto-select opt ion was not chosen durinp assembiv M the hios,, a! i
Floppy bis!: drives will also hare a0FF"H byte in this position show'insz thzt
the formats cannor be chan?ed.
DPH-3 -Disk Drive Type. Byte.
This M"te is bit niappcd and contains flags indicatinp many parameters ot the'
drive. ijor Flopp': brivt's. this byte contains a copu of the first hyte in tht
Physical !jrire Table (See S.2. I, ('Ü\'l"[G+35 jwith the two reserved bytes s:c·t
durin;z ti't drirc scíe'í-i icír n:"c)c€'!z5. Th.tí byte is then defined a",:
Drive ÍVPe Byte
Bit 7654 3 2 1 O
1llDisk Size O0O=Fixed Disk, 001=8", 010=5.25", 011=3.5"
O7Single Sided 1=Double Sidéd
O=Single Step Drive 1=Double Step Drive
OzMotor Always On 1=Drive Motor Control Needed
O·Max Speed 5.25" (300 rpm) 1 =8" &HD Max Speed (360 rpm)
O=Doub7e Density 1=Single Density
Tc'r lian: il.'i >k. !"-'{:t¿ ': t:(')!'!>, an'f tht' !':.áY i'ü\"€". íhiu tn"te is nm used aíU is :'tt
iq ai !::er{".:' iníiicm inz' li ]" iu: eci T.'ri\"c-: tvpe.
DPH-,? -Driver llj Numt)er. Byte.
Threc Driver 7"rpt'.s art' üs'i: d irí z'he t/Ásic lí/l' IÑüs conÍiguraticm. A. Zc'rü \"Áíúz·
ind}catc'j- a.\'c)/}-L-{!btL'r}t di i\"í r, wit!_i other values used to direct disk acct"r'-
f_'S to tñc' rL'sl)<"c't i\"t-' CQCit: - ar'l'j"o;'I"iale To the de'."ice. !basic ciel inüci (jr1\'f :"
typeq eú: í:-Á Ice" i;C)i'i': y!".'i'ú: ii i. Ha-rt! Disk via tlie S' S! interface (2). anci 1·:A".'
hií,É: (-"l,'. ;j yot' \'\'!2!1 to é-Y'.c'ñci this: rabie to inc: lwie ta]io!"eji dr_i\"['7": ',.
please CQñ"jüi t\\'i "t!' TÍ"il' áú'j'jo!"s tí" preclude' possible confi ictÁ wi tij pianm"·: i
exteris icm>,.
DPH-1 -Physical Drive/ünit Number. Byte.
This byte con[a]j).b Ült.· Physical Di"ive or Unir Xtnnbt'r hosr.in;-' int: io;z ic,i:
drive. l-or Floppy [)l"i\"es'., this \'\'iii usually be in the ransze of Oto 3to:"
tour drivc's. Hard cir i\'eÁ ni: 'iy have several 1)Píls shariríz t"he same physi cal
cíi"i\"é numhúr. whi it: tizi>, iiic'id is ignored in the sinszje RAM drive supported 1!1
the distrihution Fi/i' ijio\, \"ffrsion.
NOTE: The ?'ííysi cal í)rive X"uuiber byte for Hard Mives is comprised of [\4"(\
f"ieid.s to ease hand!ln.£' of S'.'SI cierices. Up to seven devices (device 11!8 jg:
rt"m: 'r':e.ü tor Iñc !'!cr'í (:on}}'urÚr) each hm"inµ u]' id :"i J..ozic'a! U!'i1t>. niízy hc'
Cié' ilñt'd. Tnt' i".\"íj Cj", cí"üji l'"ú'"'¿yf ¿¿"-;
53
PR(Xí!L1MM! rm Wp mo":
Ehysic.a7. Orí ve Numt2er
Bit 765 4 3 2 1 O
Physical Device (OOO-11OB, 1118 reserved for Host)
<reserved>
O=Unit Not Available, 1=Unit Active
Logigal Unit Number (OQO-111B)
DPH+O/1 -Skew Table Pointer. Word.
This word contains apointer to the Skew table indicator. It rarely is used
for Hard and RAM drives. but is required in Floppy Disk drives. It" the bios
was assembled using the Calculated Skew option, the address is of aByte whose
absolute value indicates the numerical value of skew (normally in the ran,tze O!"
1to 6) used for disk accesses. This terní is often replaced with Interleau: ',
and is synonymous Í'(.)t this purpose. IÍ' the value of the by[e is neµatiui'. it
means that the sectoi"": are recorded in askewed forní on thc di sk and thar
Reads and \Ú"i tes shI-7ljl(j be seq'-íc·ntia! .If" the value is positive. then an
aigori thin is cal leo to cc'níputc apírrsical sector number based on the jes: irt'ü
ioYi ca isectcj" and tiit' skew factor. For .svstenís assembled without calculated
skev: .thiq vmrci point> to atahle of" up tO 2(j bytes which níust be indexed v,"ith
the clc'."-i retl T'hys ica! Secror number (O. .Maximurü Sector Number iro obtain ti\t
(: orrUspon("lln? !'is: k,Sec: [Qr nu[l"l|)U'r.
DPH+2 -Dos Scratch WOrds,. 3Words.
These threú '.mrciz át"E a'."ai iahíe tut the ño': to use' a> it recµire' .\"(1 fj'€úi
value" arc a46i?rtcj. 'jot" are n]E'aninoq ioj" the dátci "U"rru¢ Uíere o;" am" \"CííúÚ.
DPH+8/9 -Directory EuiÍer Pointer. Word.
This word p¢.)intj, Ii) ¿j i:"-!"';"te L)am are: í that i.s used tor ['lrecLc\r\" sú¿: !"c':!'£:: .
It is us&Áj\" acc)n!nlt"?;"i art!a ua.i lN'i:":- in asystc'ni and is irec:ue·nt ly upd,ítt'ci
t
F)\" U')ú tjo"> in nornmt usu'.
DPH+1O/1I -DPEI Pointer. Word.
'!'his worcí poinrs to another ciara ",trucrure which derails mm" tjjf" íhe loszica!
pararrmíc'rs cj tnc' seic'cteci ¿]"1\"é or partition. its structure is dctai led in
Sect ion S.2. .'i bt'lo'ñ .[.)1"i\'eµ. oí' the' sanie type" anci logical con!'i2urat io:zF:i't"."
share DPB de! iríition: ",, so it is nor uncorrimon to find the DPt-s poiníet" in
dif"terent !'F'H structurtw pointing t(: )the same area.
DPH+12/13 -Disk Checksum Buffer. Word.
This word points to ascratch R-"\'ij buffer area for ren}ovable-rhc: c}ia dri\'e.q use: 'l
to detect disk: chame:',. -\ormliy this feature is used only for ELoppy Disk:
br ive,s, and is disabled 1)\" conta ining aZercz word (()()()01! jfor Hard anti Rt\7'!
drives. Foj" F]Qpr\" !)Á\_CS, aPAY area v\'itñ one byte fur erery four directcnu'
enrrius (12x-hyte sectori is neec!úd (See 5.2.3, DPH+I1/12). This scratch areci
cannot shat"tcl aniong dr i\'€-g.
It should he ncnt'd that in aful I3" Banked Fí/P Filos system with ZSLXj'SZ, triú
Checkst'uí but fur i'í placed in the System Bank and not direct Ly accessible tn"
arplica[iQns p1"oFTal)i: ".
RA
B/P BIOS' PROGRAMMING
DPH+14/15 -Allocation Vector (AL-V) BufTer. Word.
This word points to abit-mapped butter containinsz ont bit for each allocation
block on Ülé sub,iect cij-i\'é (See 5.2.3. DPF$+5/rü. A"'}" bit in this buffer
meam rhar rhe cnrrespondinp block of data on the device is already alloc¿lLe(]
tQ afile. while a"U" means that the block is free. This buffer is unique to
each logical driue arid cannot be shared amonp drives.
It should be noted üíat in afully Banked b/P Bios systew with ZSbOS2, the .Aj-\'
Buffer is placed in the Svstem Bani: and not direc'tly accessible by app! ica-
tions pro?I"anis. Since- áccé8s to the ALV buffer is frequent iy needed to COIhf'-
ute tree space on ciÜi\€'.s. 7,SbOS2 contains an added funct ion to return ciijj.
free space. Usinµ this caí iallows applicat ions access to the inforniation
uithout directlv acce3sins? the data structure.
5.2.3 Disk Parameter Block.
Tht-' hisk |'aT"at!]c[c'r" íiloO lT-'F-'Fn ii-, aciara structure defined by bi,Ntai Re:-,'-É¿"í:"í:li
for (-'}',/:y1 whí C!"í cic'i' ineú, the- iogica jcónfig,urat ion of' StO1"áfzé on 1ÍlélSÑ s[ora?€'.
ii has hec-'n éxpa.ndeci in Fi/l" Hio: í to include adciiuonal inforníarion to provick
enham eci i¡€fz ib: jit\" ami capahi !ity. The expans ion is referred tCj as rht
FA"ten("1c'(-i I)Pi' Cj!" XÍ'v!-s. ancl r're!jen{js the actual L)PB structure. jhc' address O!
ene !'!-'ií !Í":
.i\" lic· czincuneci from the' bt"pi pointer returned by the Bios err Dos after
arñ4 i.(: )e'L-'tiÍ.7t"| Cet' $.2.2 abo'."új. All 1)PFSS reside in the' Corüníon Memory area
and ai"e- avc-.i Aíhic [t"' aj': " !icat jün: -. protzranis whether in aBanked or ljnbanke(}
sysrení. ÉujI" [!)¢? >: iíke of' ac'.7n\"c"nLiL)r,, 'the bPbs are labeleci in tht- sam' niarmít'
CL6 i)!'ií", 'A") rii !)ln)': -i}}'t(jg ust: cj for !jcjr!'3' Drives. L'Pb>0-bI'!j.'s'/ tor H&tc! i:ri':t·
i'art it ion:,. aná l.'pjt'"}-9'/ fur iü\jí bí"i \'éu.
'!"'hc Ía\"Lj}.;í ut tin' bb'i i-'m"anict Úl" ísiocÉ: a,s inciexed froni the a'rai lalÁe 1'!-·'!1
point'. rix:
DPE3-15 -Ascii ii) String. 10 Bytes.
'1Í?!" striTí? S;t·l"\"¿:"j as i-tn iden'í íi'icaíion vÜ!!cñ níay be printed L)\" Et1j}j¡ icatiím'"'.
prcmranm s>üc.íi áh our HÍ-'FL")}-!'"$.."."i .ñ"fj'\ strirw Eiá\" bc' arüixeci aiphanunít'mc ,i\: sc'! i
,
set Cji" up tc' ten cil¿1!"¿íc"?t-'Fg,. huí the líi>t valid character must hni"í tne :Yl:_):-,.T
.Yjg!iij"icarlí Hit ';pit "!Mi't tg r'!'".
DPB-6 -Format 7ype Byte O. Byte.
j'his byte containu sortm cit" the inforníar ion about the- forníat ot the ciriue. am
the io?ica! sequeücing cU inf orniat ion on the phvsicai medium. The bits in tríe'
byre hart' the' f'ci iowim siµmii"ícance:
Bit 7 6 5432 1 O
l t lDisk Size: 000 =Fixed Disk, 001 ·8", 010 ·5.25", 011 =3.5"
Track Type
OCIO ·Single Side 001 ·Reserved
010 ·Sel by Sec, Cont 011 =Sel by Sec, Sec # Same
100 =SO All, SI All 101 =SO AI1,$1 All Reverse
110 =Sel by Trk LSB 111 =Reserved
O=Track OSide Ois Double Density, 1·Single Density
O=Data Tracks are Double Density, 1=Single Density
5.5
PRCJGFMMM!!QG E,'F' F'lC)S'
Fen" Hard Drives and k.'\Pl ímves. this byte contains al lZero bits Iq s:.znit \'
Fixed Media and torniat.
DPB-5 -Format Type Byte 1. Byte.
This byte contains adciitiona! information abour the format ot into.rnitttion.
The bits have the following meanings:
Bit 7 6 5 43 2 1 O
ll I Sector Size: OCIO =128, 001 =256, 010 ·512, 011 =1024
Allocation Size: OOO=1K, 001=2K, 010=4K, 011: :8K, 100=16K
(NOTE: This should match the definition in DPH)
<Reserved>
O=Normal Speed (300 rpm)
1·8" & HD Floppy (360 rpm) or Hard Drive
F'c'r !!ard íCi\"j-$. The' distribution version oí" HIP Filos anci tsu r»po !" i
utili: ies as,'"iunie that the bectoi" si: 'e always 5i2 7n'tet": .Tht-- rerüainin,sz ijtitt.
y¡nou!cl he sc: ias in("lica[t('"l.
DPB-4 -Skew Factor. Byte.
This': byte is asignúá i"bin;Ir\" \"¿2juc' inciicat irj? the skerc factor 1(") l)t,· ust ".t
ciuí iñ? Form-it .Rectci áñti '\',[" itl i:i": riccrna!lv used only y\ ith Iioppr I)Á\'É: 6
anti u.'íualü" 9,t?t to -i í(.ú'i"i!) iOf riarci and R.'\jl d.ri\"€'.-í iq ind1.ca¿€' tnát iu-z(1/!: -
anci \U"i tes siiuu lcl ht done \ii th Xl) ":É:C'i', .It the op[ion to caicuiatt- sÚi"n' i:>12
effect du: rlñ,2 Ü1()>. :í$>€'nlt'!j .Hie Skc"'.'.' pointer in the bPi! (!'.!-'li+(),·'i )p'jrt "- ['"t
ihi <})yt'3. t! ¿7 4l-"\'. taOlc' l!-, u'u: ':l. Ü"l!S- l"ytc' has ñu cÍ'fec'T aria sn'.7ujcl I')l $t?í
tOti9il,
OPE-ti -Starting Sector Number. Byte.
Thist hytt' C[)ríLct¡!"l> tíj·-· nUnii)j :" ("u Üíú- tir>t }"h\"-qicaj Secrcn" o!) c-."ic!í tí"¿i-t".
Siñíc' nicm i.ñj,É; '-)r){.'f'az Ai,2 µ.\"g'IL!!i!> ü:-n.- a.{t't"[)-t)dSC'¿i sequc'rír ial scM'ñti' to Te'Íe i"-
c'n: 't' sector: -.. ü"jiY \"¿Zl"i!e pt"o"í" lt!' :-, ín'. tnrtiai cjf tser u"' correct i('"}.git[1j tl.""
p!}\": 3ic:á !.-(Ktúj' !ju!1,l_)¿.',">,.
DP6-? -Physical Sectors per Track. Byte.
ihis hµ'tt: conmins the nuni:m- oÍ" Physical (as opposed to iomca! i3t:¿'[clrs gÉji
each tracl. .For eeample, t'P/ul comnures sectors based on Rs-byte al loct:tioí: "
wni ch are useci on s iní' ic--ciensi 1\' t: Fíoppy bisks. one of rhe popular íí\'t'-
inch fonnau uses five IE: physical sectors which equates to 4() logical Ci-'/M
sectors. This bvte contains 5in this instance for the nuníber of Ik Phystcai
Sectors .
DPB-1 -Physical 1racks per Side. Byte.
This byte contains the nuníl)er Physical 'tracks per Side. also called thc'
K'uníher of Cyl inders. It reflects the Disk, as opposed to the Drive capabili-
ties and is used to establish the requirements for double-stepping Üt Floppy
Mires .In the case c/í a4Ü-track disk placed in an BO-track drive. this byte
would contain 4(), while the brive parameter in the Confipuraíion St--ct ion
contains 8() as tht-' number of' tracks on the drive. This byte has no meariinjz
for Hard l.'r i"\"t" part it ions or k'\'j dri ves and shou id Mset to Zeru. alth(?É-: 3'rl
any arbí trary ualuc j;'j acceptaiAc".
5E
f3/P EllOS PROGRAMM INC
DPB+O/1 -Logical Sectors per Track. Word.
This í"a)ue is the number Logical l2í>-byté sectors on each elata trcíci. O! thú
dis!.. it is equiualent to the number of Phvmcal Sectors times the Physical
Sector Size M()b i29.
DPB+2 -Block Shift Factor. Byte.
DPB+3 -Block Mask. Byte.
DPB+4 -Extent Mask. Byte.
These three bvres contain values used by the Operatin7 System ro compute
Tracks and Sectors tor accessing tofzical drives. Their values are detailed in
various references on CP/lv! and ZSlX)S propramíinµ and should not be var ieíi
without knowledge of their effects.
DPB+5/6 -Disk Size (Capacity). Word.
This Word contains the number of the last allocation block on the drive. it
is the same as the capaciu' in al location blocks -l. Foj" example. iÍ" ¿j
al locat ion bioc'kt> art" bc·inµ used and a}() Mqzabyte drive is being ch-'f"inc'c.
thi sword wou\ci contain i().OO().(j0O/4O()() -lor 24!99.
DPB+7/8 -Maximum Directory Entry. Word.
This 'jórci cDñtiÜñs the numhür of the last I.)irector\" Entry and is rhc suznr: - CT't
the \uníbe.t' O! Ln'cries -!. i"oí" exaiüpk'. ii' 1024 directories are ci€·síj"€: c'. tñr'
vi"ord would bt^ ser to it: Z4 -!=l'j£3.
DPB+9/1Ü -Allocations Uand I. 2Bytes.
2he,': c: twc/ Bytes MIC"! rht' ]n!t1(Ái aliocaí ions .stored in the iir"t t".'."c} ¿?\"[L"!3 cl
the' :Y.\ ísu! fer {See S'. .2. b!'h+!j/!3 }during initi,. drn_e m'!ect !c)ñ. Tnc l!"
I)ri1nF¿r\" U",l· IS to ir)t_jjca[€' ihat the" Directory Sectors arc" aíreacñ" al !(.)ca!ec"i
anci u:1a\_al ¡¿-jj"\ it-' io: "Ciíi1X: stc)]"a?Ü. Thcr a:rt' bi t-mapped values ana are u".cd in
lti-hyu- .í.o-j)\"ít9 !('["[l'l Ci"j cmrosr'd to the normal i\' used Lo-brtú. !í!-t3y[c" stcjt'a£Ü
úScúi iri /41.) t}"p': 'L"í-'i. sI"c?!" \4o: rc: sroragü. "Me bits are a!lc)c'a[ecj trcm íht' !\¢S'.v'
oí" ZM j"j r>t l:,íU. rhru tht' !Ni. then jf,x!s thru LSl". of' the súconcl r;y[t' Tíascci on
orxi' i: 'i'. TYj i" til íQci'ít jC)Tt l.)i(:)c!- c)j" i:racticm tñereüt" used bv tK Mrec-tor"c. The
.
r'i tS ñh"í\" t: C" cíí iculatúci 1)\" tir>r cornp'it in? the number oí" entries per al loccít ion
híoci.. them di"\_i("jLri2 the desireci number OÍ" entries by this nuníMr. Any re-
mainder r€'cíLíire$ a!! aü(_ii[lon:íi allocarion bir.
For exampit-. it4k ai ioczt ion blocks are used. each block is capable ol
4()g(_: b/í2 t'n'tt: .s pc·r entry =l2ti Directory Entries. If SIl? entries are desired.
then Sl2/ií> =4allocation blocks are needed which dictates that Aljocatiün
byte () would be ii !!Ü()()ÓH (()F(JH) and Allocat ion Flyte lwould be OOÜ()OÜ0OB.
DPB+11/12 -Check S(ze. Word.
This V\o: rc! isonl yused in' removable media (normally only Floppy bríves )art
indicates the numoer sectors on which to comj"ute checksums to deteci
chan?e(j disks. it should be set to OOOOH for Fixed and FUL\Í ínsks to avoid the
time penalty of l"ejQqging after each warm boot.
DPB+13/Í4 -Track Offset. Word.
This i\"orc! inL:i[-:i.íe:¡ the nuníbc·r Logical Tracks to skip before the present
!K'i' i" éÍ7ÚCíÁ\"t. iiis norriia! i\" used to reserve boot track". lusuaAy ito
K7
U*
PROGRAMMING R/P BIOS
3). or to partiuon larger drive> into srrial íer logical unitq 1)\" skippinü
tracks used for other drive del initions.
5.3.1 Environment Descri ptor.
The Environment Descriptor. referred to as simply the EN\'. is the heart oí"
what is now known as The Z-System. The iñCjSl recent additions to the system by
joe Wright and jay Sage replaced sonnie relatively meaningless elements in the
EN\' with system dependent informat ion such as the location of the Operating
System components. Consequent Iy. the EXV is not just afeature of the ZCPR
3.4 Command Processor Replacement, but is an Operatinp Systení Resource which
allows oUter programs such as ZCPR 3.4 to access its information.
l'he B/P l3ios requires an EÑ\" to bu present, and uses several items of iniormi-i-
tion comained in ir. The banked ZS1NS2 and Z40 Command Processor Replacerm: nt
use even more FjX"\ features. i\ fe'.'i reniaininµ bytes have been re-defined Ic4"
úuppori tcj F'/F' f:bi(Ds",-b¿a>,L·(l systeri,ü. Tl") denote thú definition of HIP Bios data
elenicmts'.. aneit' Tyj'c' .9íhí. hax been reservea. Using this "7ype" byíc'. use': "
[)rQgrar!!!. can accesj) áñ¢.t takt acj\'anta.2E' oí' the new' det inií ions and f'eatU.rt'6.
.A [eKlr)|¿í[e tc:i" iht: Fnn iromiení hescupror used in H/i' Bios. which tar: t"s it'--,
\"ajuE: -, Uc_m 'Ú!t· ?,.iiiAúi .i-lb ÜiÉ' jllcjt|tjeL} in the distribution disk is:
.*"k**¿'**': K:s:s::h>.*'a:*'*.g"-z'.:F.>:i.:4*z.>. t' .-\ (' "i IU'\ *'*cY*: F¥***:**:!'*s*m:!:z:*":i.*z *>: :!
i' ii [i"á!iSl ti(")})ins2 t1"C)Ili aí"i c? íCjt-f Qpe]"aLln2 environínent whicn '
·i UseS, u¶t-"í"-i()adec! Éñ\"2 rorínlL-'"?í ilíes such as S\t"S.É!\"','. vou must 'e
't' e]tí]t-l" cíe 1eÉc' .suc+ !üa-! Lñ>U"UC'L ions or modifr the li!'r"\' Í"l les'. "'
'k to reliecí íf"it-- EXACT iQac1e("j Ays[erl¡ aeÍ'ínnicm. ""
'i. i'ai iurt' u) o!-)>·.c'r\'"t' tííi 3i'ac't \1 _i iiprc)r)ab iy cause man c&
*unck'síreu side étit: ctx; :$'
&'d'Z'z.$: Z'a-x'A:"t:'i'&:d'A:z 8': ?z z'z.¶': í:z:z'z.*> Z:.S.Z:4:.!:8Z:&.]'q:**Z-*&:A.*+Z:S'Z.&.R:&:z:Z:^*±:*:A:*x:>"?.Z'K"
:Eijvj ronme.nt 0escr"i k>tcu" for ZCPF: ZZ
ERL' ,jF O ,Lead7r\e jump (addrw',e CEllOS when H2CC)t-()
DEFE 'Z3El4\i" ;Eru'iremtent ID
DEFE 9ñl" ;Env type (>=90Fi meanE E/P Extended ERV w/User Area)
DEF\/ EXPFTH :External Dcith (PATH)
DEFE EXPATRS :
DEFW RCP ;Resident command package (RCP)
DEFE RCPS ;
DEFW lOP ;Input/output package (lOP)
DEFE lOPS :
DEFW FCP :Flow command package (FCP)
DEFB FC.PS :
DEFW Z3NDIR ;Named di rectories (NOR)
DEFB Z3tlDIR£. ;
DEFW Z3CL :Command line (CL)
DEFE Z3CLS :
DEFW Z3E!IL' ;Éñv7 ronment (EHV) -Actual Starti rig Address
DEFE. 23ER\'S :
KSj'
B/P BIOS PRCY3RAMM INC
DEFW SHSTF. ;She17 stack (SH)
DEFB SHSTKS :
DEFB SHSIZE ,
DEFW Z3MSG ;Message buffer (MSG)
DEFW EXTFCB ;External fcb (FCB)
DEFW EXTSTK :External stack (STK)
DEFB O:Quiet flag (1=quiet, O=not quiet)
DEFW Z3WHL ;Wheel byte (WHL)
DEFB 9;Processor speed (MHZ)
DE FB ' P '-'e ':Max disk letter
DEF8 31 ;Max user number
DEFB 1 :1·Ok to accept DU: ,O=Not Ok
DEFB O;CRT selection ()
DEFE O;Printer selection ( )
DEFB 80 ;CRT O: width
DEFB 24 ;#of lines
DEFB 22 :#of text ]ine£
;In Extended EllV, CP.T 1 is replaced by System Infc
; ; DE'E 132 ;.CRT I: Width
; : DEU 24 :#of lines
::DUE 22:#of text 7ines
:PONMLKJIHGFEDCSK'
IF RAMDSF:
DEF\1 QQQ1OOOOCC111111E :Ram i=, Drive If
ELSE
DEFil 00OOO0C)(J0111l111E. :Lalid drives vector
ENDIF
DE FEJ Cl .(Reserved)
DEFE EQ :PRT (i: width
DE"E EE :# Of lines
DEF 6 5(2 :t/ qC te7't TWíé'é
DEF6 1;FF f?aC (1=can Form Feecñ
:"- L|£5urr)E"f¿! Prtl stc'raCdE for Re"'ident User Space Vector£ ========
::DEFE. 9E. ,F'RT I: width
;;DEFE 66 :#of lines
.:DEFE 58 ;#of text lines
;:DEFE 1;FF flag (1=can Form Feecí)
DEF5 USPCS ;Remaining Free User Space (recs)
USRSP: DEFK USPC :Res. User Space base Address (xXOOH/xX83H)
DEFB USPCS :S7ze of Res. User Space 128-byte recs
:In Extended EtlV, Printers- Zand 3are gone, rep7aced by System Info
::DEFE 132 :.PPT 2: Width
: ; DEF E EC :#of ÚiñÉg
:;DEFE 5-S ;#of text }inee>
59
PRCX3F?AMM!NG B,/P BlOC
;;DEFB 1 :FF flag (1=can form feed)
;;DEFB 132 ;.PRT 3: Width
; ; DEFB 88 :#of lines
; ; DEFE3 82 ;#of text lines
; ; DEFE 1;FF flag (1=can form feedi
DEFW CPR ;CCP base address
DEFB [DOS-CPR]/128 ;Size of CCP in 128 byte records
DEFW DOS ;Bcbs base address (xxooh or xx80H)
DEFB [BIOSJT-DOS]/128 ;Bdos buffer size in 128 byte records
DEFW BIOSJT ;Bios base address (NZBIO if NZCOM running)
DEFB 'SH ';Shell variable filename
DEFB 'VAR' ;Shell variable fi'letype
DEFB '';File 1
DEFB '';
DEFB '';Fi7e 2
DEFB ' ' :
DE'E '':Fi1c? 3
DEF9 '':
DEFE ' ':File 4
DEFB ' ' ;
DEFE O :Put.'ic drive area (ZRDOS +)
DEFE O ;Public user area (ZRDOS +)
;Env 128 bytes iQñc: -
5.3.2 Terminal Capabilities.
In aá.Á tion tu tl^: c' i3ás: lC i:n\"i."onn}':n"L TK"scriptor áésc: ribed al"b(",": t'. ¿"i L1íjni: ;:."
Termina! t.apahc lit': rt:cc)["d structure (TCt'P. also k:íown as TERMCAÉ"I it> attac'hc-: :
to re':erre spacc ior .and def jre detau It capafj ii ttéSí cjf thr conípatt": "ZE"t'iíi ·-
na !.The de t",íu :tn,R'\?\"'A!' is !u! 1\" compl i ant 'n"i íh the FLIES rout inc' s ügcúQ ia
the Z-Svsreni (.'c)níl1íl!tíit\" at"te'r "\1-1Fí:!.). lhe skeleton recorci sU"üc'turt: .}"í;
w
'u:t Y » Ák
3RY XX ** **jF* X.K* T* ;irp » ;ii b » t :$ ¥7 ;pX»Y;1:k k: r :K *? 'r X y :k Ik*X *** X* X tX** X ».jt *:r»k* Ejkk »*X.* ?K
y
;Ty)ig TermCap Dat¿ fbt" the NCvi Z'-Syeter: ' comSl les with VLIB4D s»ecs and mcre.
;fu27y de"crubes the termmal arte' it@; capabiiities. Edit the fields with
;values for ycmr tesmnM charactervstic'a or use it as a temp1atL: fer an
;outboard cjefini ti¿)rl íoadeC from the S3tartu;: .' fi le.
TCA," :DEFE ' ':Terminal Name (13 bytes, space terminated)
BIZ: DEFB GOELD-EN\'2 :Offset to GOELD in graphics section
814: DEFB 1OOOOOO(jE :Eit 7=Extended TCAP, rema"tnder undefineC
:B15 jjcj Standout O=Half-lntensity, 1=Reverse Video
;EllS b1 Power Up Delay O=None ,1·lo-second delay
:815 b2 No WraL'q Q=Line Wrap, 1=No Wrap if char written
·to last character in line
?
:B15 b3 No Scroll O=Scroll. 1=No SCroll if char written to
.last char in lasít line of dip1z·y
g
;E15 b4 Al·lEI (i 7ASCII, 1:z AliSí
(30
é/P BIOS PRQGH AMMltiG
El 5 ,DEFE3 OOOO0CK)OB :Reverse Vid, Wrap, Scroll, ASCII
:Additional single character cursor motion bytes
DEFE ' E '-'(¿i ';Cursor Up
DEF E'X ' -"u ';Cursor" Down
DEFE 'D' -'í9 ';Cursor Right
DEFB 'S '- '@' ;Cursor Left
DEFE O;CL De'lay for Screen Clear
DEFB O;CM Delay for Cursor Motion
DEFB O:CE De7ay for" C7ear to End-of-Line
;Strings start here
DEFB C) ;(CL) Home Cursor and Clear Screen
DEFB O;(CM) Cursor Motion
DEFB O;(CE) Clear to End-of-Line
DEFB O:(SO) Reverse On
DEFB O;(SE) Reverse Off
DEF Fj C) ;(TO) Termnal Init
DEF E O:(TE) Termnal De-init
:ExtensiDn5 to Standar"d Z3TCAF
DE'FE O:(LO) Delete Line
DEFE C;(LI) Insert Line
DEFE C' :(CD) Clear from Cursor to Ena-of-Scr
;Attributesz setting Oarameters
DE PE, ("t :Se': Attributes
DEFE (I ,Éttributes String
.Read items. from screen
DEPB Ci :ReDort Cur",cir Pos'ri (ESC y Pn Prd
IJT.F 3 O ;Read Line Under Curscm
GOEí-l' OUT O;Ót1/(jFf De1cw
:Grapl"nc3 strings offset from rjE7ay value.
DEF E. Cj :Graphics C)rt
DEFT i;Grapnics Off
DEJE O;Cursor Off
DEFE C' ;Cursor On
:Graphics Characters
DEFE. '*';Upper-Left Corner {" ]
DE FE, ''';Upper-right corner ["]
DEF E '"':Lower-Left corner ["j
DEFE ''";Lower-ri ght corner ["]
DE FE. '-';Flori zontal Line [-]
DEF B ':';Vertical Line [ : ]
DEFE '"';Ful) Block (hashed block) [*]
DEFB '# ':Hashed Block (big X) [#]
DEFEI '+ ';Upper Intersect (Upside down "T") IK
DEFB '+'.Lower Intersect ("T") {+]
DEFE '+ ' ;Mid Intersect (Crossing Lines) [+]
DEFE '+ ';Right Intersect ("T" rotated left) [+]
(jEFE: '+ ';Left Intersect ("T" rotated right) [+]
DEFE C'
IJEFE C)
EN\'END
El
B/P EllOS UT!L1T!FS GENERAL
6. B/P Ellos Utilities.
\4e have developec! and adapted many support rout inús Iq assist you in using anci
taiiorinp 13/"1' Bios installations. Manv of these Íollow" g,eneral !y estabj ished
Í'unctions. and their use may be readily perceived. Others are a('jap'.a[lQnb of
routineq which we developed to support our earlier ZSDOS operatinct svsteni. or
- .
are adapted from routines arailable irt the Public Domain. The rüníaincler were
written specifical ly to support this product.
Each support rout ine fol lows penerai ly-acknow leckecl pract ices of' Z-Syst él:
Utilities. ir'-cíuci iny bui !t-in Help, and re-execut ion wi th the CX) conmzmci.
Help is accessed by typin;z, the name of the desired rout ine followed bv a
double-s lash (i.e. LDSYS //j .Addi[iQna! inf'orrna[ion is prcn"ideci in tin:
fol lowinµ sections Qj this nianual.
Some' cU' iht-" features of' Fs/7' Es-los are support c-d mtía Ve rs i(j!]-¿!/'?'d: !C.L-.n[ I"';"'-)--
2rariis ."íhe>e raí"y áMCül spe"ii'ic systems and shüujd ñcrt bc i!7ZCtT"l"f"i}l7µl¿t\! jr
you support anuíiibc' rc:t¿j it tet"eñL cL)R]puL¿'1" [\"rí'") .(ontací uu i:"\"Oti ñC-..úi Tl_)
C'"C'¿itt' g;L.\-'il ag-i'¿.'(-i!'1c t--U j()T'cl.j \'c-7 s ion oÍ' curie OÍ' these pT[jg|"a!IL: -,. ];"j t!","
fol!c$'.',: nL' ciL-µ[_i'ii"".i(..)I'}'-.. éM rLjullr}tg, \¢'})Lch arc resírtcíec to aspccítií- µ;\"stt: ::í
Cia[a t!'i li l't"'ctLü [7: TA i!Qf"¡ rjg u T C:' f4O ¿"ín!]("!tc1Lc(i .
62
ElPlí'jlLL) Et/P BIOS UllLlilES'
6.1 BPBU ILD -System image Building Utility.
The purpose of BPt'S( !LD isto create aloadable Systerti Image. input ille".
needed by this utility include the output oÍ' assembling the BPB!C)-}: :l: fiju tín
Mi croSot't RFL format }. aREL or ZRL iníape of an Operat ing System !ZSÍÁ)S for
unbanked or ZSBOS2.ZRL for fu iiv banked systems are recommended) ,and aRl Lor
ZRL image of aCorrírüand F'1"ocessc)r (ZCPR33.RE.L for unbanked, Z40.ZR'.. for ful iy
banked systems are recommended) .
BPHUIIJ) is capahle of incorporar in>' many 'types of operat inp system components
into the executable image. Among systems tested are customi zed BlOSes, ZPDOS.
CP/Y 2.2, ZCPiC2, ZC PP-ix and others. One restriction in any segment occurs in
the use of Named COMMO\"S for locating variot's portions of the systeni within
the processor' smemory níap. Most assemblers and linkers are lirríited in the
nuniber of' different riamecí CO.\Ñ(i\" bases which can be suppcuteci. The l inker
incorporated in 13PBL"ÍLh can handle oniv the tollovt'in,sz named (Í)MM(-)\: 4: EÑ'\/_ ,
.,
MCL-_ .,MSG ,FCE3 ,_SSlh ,XXK ,BIOS ,BANKZ, B2RAM, and RES'VD.
6.1.1 Using BPBLJILD.
HPFI'.JÉL.D ope-rates \,\'i eh iai'ered íjenus and may bu iní"oked to bui lei aTer!(ícc"n]c"T"lT
for aí'í e:iisuny hume i"i iü, \)j" with defaults to construct atotal i)" ñé\4' iniage
j' ile .a! ii"i ie> nee'.}t--\'j u) c(jñ>,í ruc't tíj€ ciemred irna7c": 'Bio: i,. bo: "3 .Áñíi (j·'i\'
níu:-.l "resñlc in the current Í-'Tj\"é and ljs.er Arca. or be ac'cúsibK \"iá tí"jtj'
P7F'iic attrilzuic it upúrm iny undúr Zbix)b. IM' synta"t fot" rsi'i$L',li.1y iu.:
BPBUILD -Generaze system w/detaults
BPBUILD frü)ft] -Make/Nodiiy aspecuíc system
{Defautt type is .IMG)
BPBUILD // -íasplay this Message
!tshot' id Mnor Athm i' /: srh:)sj is' tht' seíec'-tñ 1)0>. i3: tµj iocu !c: i Miftí '>
for Harci 2.)1" ,t\"C"7t art' ioca:c'd in thú b\"Ñtént tjanP.
6.1.2 Menu Screen Details.
L"porí sta"rtinµ Z'i'hi..í! '.). \"()ü '\',j¿; 1?(-' rrc'7Ú!7["£'c? i\'itf"t íhc" mir: Ei€9!l'Á '",cic'c· }. iix": ;.
ihi sscreen. you !!l[: yÑt" it -isuit. Ü"7j ti'íú t,'\!"té min caíeµoriei'. to taj ic': "ttit'
out put inía '"'tí ."¿ ¿"jl"'"\" '"K)tff' 1)\ thc cof1t"!,"Llrc: [ion, pi"é">> 1tj2 cort roí-e' ('u" r"i; a""
\\ l! ! ex itthe tútti!ú aríci !"e['ur!"! tcj the c"'omíand Processot" prompt .
Mai n
iFile Names
2BIOS Configuration
3Envi ronment
Selection :
64
B/P E!C!S UT!L!T!ES BP!3UILD
6.1.2.1 Screen 1-File Names.
Selecting oprion One from the main menu wi lIpresent ascreen iistinsz the:
current file names for the three input files needed to build an inla,E€: ,and the
name to be applied to the output file. If 13PBUILI) was executed with tM narñe
of an existiñf2 Imatze file. the file names will be those of the files used Lq
L.
build the specified IKja?c[ fijt·, orhe: rwise it will be default names furnish': ¿'c}
by BPBUJ LI). Asample screen for anon-banked YASBEC system might be:
"Files (1.1)
1 Command Processor Fi le :ZCPR33 .REL
2Operating System File :ZSDOS .ZRL
3 B/P Bios Source File :B/P-YS .REL
4 B/P Executable Image :BPSYS .IMG
Selection :
Select inp anr c)!'íc- of" th: -' f'cur options. \'\'j l) ai low you to ctíanpc thí' n:ute OÍ' tht-
t"ilc to Ü4t: i'or thc cies,ired sc.g,|Iie'ri[. ljt'fault File types exist for each en: ry
v.ith bot1_í the ('oi!inj: i!]c} F'rcjFej,xc)r ami Opcrat Íñ$2 S\"SÍC'ñi fiIt's dc-i'ault iñf-' Ii) .7Rl
:"70 Ú\"dc' is entered,. Tim Rios fi le defaults' to .RF1.. whi le the iníagt output
t'jít- det)íu!t". [i-"; .t\f'.r.
6.1.2.2 Screen 2 -BIOS Conhguratiori.
Select inµ l":i()s ('o{"Éf"i gumt icm f"ronl the Main Menu lSe!ecíion 2) p.rest'n1> Ü'íc
Msii' screen from which tlit: >:izés and iocations. of either existin.2 sy.sí ti'ríi
>;t-íyI)}€mF> lif" huí !Lliji,L? from íi!í existin.2 jyg Í'i lci or default miuen t'rcmt "\í'itFli!.
13PíiI"I!.í'. t\ sarnplc screen tüight appear as:
Envi ronment (2. I)
COMMON (Bank O) MEMORY BANK 2 MEMORY
A Common BIOS -D40OH E Banked BIOS -OOOOH
Si ze -83 Si ze -O
BCommon BOOS -C60OH F Banked BOOS -OOOOH
Si ze -28 Si ze -O
CCommand Proc -BEOOH G Command Proc -OOOOH
Si ze -16 si ze -O
DUser Space -E90OH HUser Space -OOOOH
Si ze -6Si ze -O
Selection :
65
!3PBU!LD B/P BIOS UTlLITIES
While the ability tQ dictate locations and sizes for various system sizes is
proridec! at this point. vve urge you not to alter the values for Bank 2Memory
unless you are VERY familiar with the potential effects and wiilinp to risk
potential iy disastrous consequences. The primary reason for including this
screen was to al)ow sett inµ Common Memorv base locat ions and to dicnate' the
-
size of the Resident User Space. Other than specifying the Common User Space
size (the starting location defaults to the address in Z3BASE.LIEii, the re-
niaining values were included primarily for the few specialized users who
require custom system locations.
6.1.2.3 Screen 3 -Environment Configuration.
Since the Environment Descriptor is an inteµ,íal part oí' the Operating Systcm
due to the specificat ion of low-level parameters such as memory allocat ions.
this screen is provided to configure the memory map in asuita5le fashion for
the system being built. For exaníple. in aFlÜ ly Banked system with ZSIX)S2.
there is norma) ly no need for ¿i Resident Command Processor. Using this screen
then. selection T) rnay 1.)g' uxeci to indicate that no spac't' is used for the R' T' by
setting it.s ]Üc?iLion anti size to zero. wi tn thiu space Í"reeá. the 1() Packa;u-'
(Select ion ()may be raised to F400ii. keeping iis size at 12 record: ':. Since
these art' the two lowe: -:l seguic'nts in the memory map. bpbuilf) \l\jj} un: tííiÁ ¿G-j
tho' lcm'ust \"íítíje useci in thc Enrironruent ,and ñio\_c the Operat iñfz Systcñí seg,-
Hicñt siinciudinµ the Rcuicknc Ü.>él' Spacel up in metriory for an increas': e of 2k
bvte". in Ti'aru lent Proµrani Area.
Ii ix irlip(jrt: \nt to note íh:tt rhc Fri\"iTonmen[ Descriptor defined in this screen
is utou: ci in a3r±ciu! ¿,1"cuá within the .TMG file produced and placed in merríory
by j.r'.¶\"g) \\'tíc'ñ act i\"a[eLi. Áñ\" aíterat ion afier ioadin;z. t"oj" exanij'k' ]()a[|iTíL'
another E\"\' i"i Ie' ¿"¡y, part Cjt' the SIARJ17' script may cause the sy'núm to operar"
inc'c)rrec[!y.
"Envi ronment (3. I)
A-Envi ronment -FEOOH F -Named Di rs -FCOOH
Size (# recs)- 2 # of Entries -14
B-Flow Ctrl Pkg -FAOQH G -External path -FDF4H
Size (# recs)- 4#of Entries -5
C-I/O Package -ECOOH H-She) 1Stack -FDOOH
Size (# recs)- 12 #of Entries -4
D-Res cmd Proc -F20OH Entry Si ze -32
Size (# recs)- 16 I-Msg Buffer -FD8OK
-E-Command Li ne -FFOOH j-Ext. FCB -FDDOH
Size (bytes) -208 K-Ext. Stack -FFDOH
Selection :
When all confimration or inspection activitv is complete at any menu. enter-
m
ing areturn u'ith no selection viill return to the previous menu screen (Main
rrieriu froni tower screens). and '\É'i jj start the build á,cti\'it\" if' asinµle retcrr
entered !i"oni üiú min menu. Al !specified files are first read to dctet-
iúine thüi rs:Í7.t.t:',. and internal n}eníc)r\" address cajculat ioñsí are perforníed. You
6€
B/P BIOS UTIL1T!ES BPE3U!LD
v\'ii l be asked if you desire FJPBUILI) to use optimal addresses for the maxiniutri
amount of Transient Program Area (AutoSize) .or use the' values which we:re
specified in menu 2. j. i:"you enter Nat this point, the build v\"iij prog1"e: s.5
under the assumption that you want to use the values from Menu 2.J. Asecond
prompt wi II ask you if you want to build asystem of "standard" se?lnent siz"tij.
This refers to the CP/M 2.2 standard sizes of 16 records (2k) for the Command
Processor and 29 recoMs (3.5k) for the Basic Disk Operating Systeni (BDOS).
If you answer Yes, AND the segments are equal to or less than these sizes, thc:
system will be built to reflect these system segment sizes. Since many ill-
behaved. but very popular. programs assume the old CP/M segment sizes, this
opt ion should g.enerally be' used. If the autosize query is selected, BPBUIID
autoriíat ica! ly executes to compjet ion and returns to the Command Processor
promjgt .
To ohtain the masimuríi Transient Program Area with "standard" seprrc'nt si 7t::·,,
the easiest tuethod is to execute FIPBUILD exiting with the Aütosizt: query
answered iii the aff irmat ive (Yes },then execute Hpr4L: [L.D again on tM !)ro[iuc(-': :
image: an>níerin>' the first query with Nfor No Autosizing. and the second qut':'y
v,'i ti: aY[c) aci,ju: '.t tht-' Iq',4'c'!" sepnwrít si zes for "standard" segnieríí locat ioñÁ.
Whi le thi si"; as:onieví'hat curiíbersotne procedure. it results in aruuch smaller
arid faster runnin;z utility than otherwise possible, and was adesiµn tradeot"f'
in Uk' dcu"e |Qpn}¿: n[. proce."n-: .
67
!3PCNFG B/P BIOS UT!! !1"IES
6.2 BPCNFG -Configuration Utility
The flexibi lity of the Fí/P Bios architecture pernjt.s custoniizin; to ycui"
system and desired methods of operar ion. This uti ]ity consúñ ¡daí-e3 SCjRíe.' of
the more common and important tailoring features in asingle uíi!ity. BF'CKFG .
the B/P Bios Configuration Uti/i ty, provides an easy, menu-driven means of"
tailoring Hard and Floppy Drií"e Boot Sector images. Relocatable Image (IMG)
files. and certain element> in an executing system. Using BPCNFG reduces the
need to assemble a new Bios iníage for simple changes. and increases the speed
with which changes can be made.
6.2.1 Using BPCNFG.
FIPCNFG syntax" follows the standard conventions summarized in Section ].2. and
responds to the standard heW option sequence of two sIa,sh characterí'. The
syntax under which BPCNFG is invoked is dictated by the typo of" .syutent 1"(-)ü
wish to conf'igurc. The FSi'CKFG Syntax is:
BPCNFG // <-- Print Built-in Help Sumiaiu"
BPCNFG <-- Run interactive, screen mode
BPCNFG *<-- configure Lxecucinµ Svsteni
BPCNFG d[: j<-- (onf"i?ure Ívi\"é "cl"
BPCNFG [du: ]f ilenamd .typ] <-- Corít"ipure Image Í"iic-
The First Í"ürni c'!' the' g\"ñzáí i6st: if-exp ianatarj and simj"'1y jj'Ar: '· ("i Ájc: ':"".
help fi itj j_1
st inz th·-: purpom' ot' tht' ut ijity urxi tnc' "¢y!}[¿í"'L: of üjf' rl"L)? r:u"
usc .The interait í\"ü ñioíi-' C'!' (")r'-'!"a'. icm. cxccut ion of T'"PC: \TLj \i'i th río arp,u'-"
menr ": .\\' i}:f!j">.t ¿'i:-) \(. u'].i"j;-'[|]'.'.1" y:ü\', ish to ccmtigurt aFíte|Itor\". l"-' tsl c' r
tmµt' \"L·l"y;:Q:a of' aP.,/7 Mc)-. ">}"ÁtCÚÍ,. anj Ac't irnerrial p":"anic'teu sto thai ñio\íÉ'.
¿jq íÉ/'cÍ I as, ¡(")[ít'li7},L' iht rcíju i:tit': Ci,'Áté¿ if' r)'£Ü(jL'{jl. Tí' no flit-' [.\";:/e is Mp'-' iiit i
toí" ar: }u:¿Á,L'i jiit.. ¿a ty;'ú of .IV/ i', assumc'ci.
rír '";j"g ñ17i\" cc'rtí' jL't'1 '.-' opt Ion'- 171 ihí' curreni.ly operar jjjg s\".gLen! with y;()r|l'-
}¡rrjíi_atl(_jr]q. The lÍiÚRi sig{"jji"}cc¿!li !ín,i tat ion is that Hard Drive part it icrí:.
mar not hc· ajtí'red sincc' xµzct' ftij tht" required bit but tét"s\ (Ai \'" anti CS\"j !:-
aRocatc'íi at '>y>tt'ñ, ioad (tj:jot )tiwiie anci cannoí be reset "ñ'hen asyst en: ip;
already ]n"'[?.¡!t"/j. ñ'il.h thi> excepi ion. al ]other paraníeters mav be \'¿zri;'f: "i
and v,'i libe in eífect. unti ianother system is loaded by Cold Bootir!? the'
computer. or ]c)aciin2 an hiage t'i le with LDSYS.
To abort the FÍPC1"FG \\"i thout changing current parameters. press either ESCfape
or Control-C frorií rhc main níenu ciisplay. Option settiñfz will occur if a
Carriaµe Return only is entered frorri the Main Menu Screen.
6.2.2 Men uScreen Details.
BPCXFC is aScreen-oriented support routine usiñ/z the terminal atTrir)ULe":
defined in the currentiy-insta) led Termcap. Five rnain screens are current 1\"
definc'd at the main menu. with sereriíl select ions resu it iñ? isuh-m'nt.
sü'reerm The first is thc' niai: íníenu from which the" general cate2c.I1"\" is'. st: -·
Jected for alzc'rá: io: ,. TM lc)r) screen !irte ref Íéc1A the Kvel and niocA' ¿j" :
6E
B/P BIOS UTI!-!TIES. BPCNFG
-Main Menu -Configuring Image File [A1O: T1.IMG ]
Bios Version 2.0
-1System Opti ons
2Character IO Options
3Floppy Subsystem Options
4Hard Disk Subsystem Options
_5Logical Drive Layouts
Enter Selection :
Each of the fire .selections results in asub-menu screen which depicts tht-·
specific elements which may be changed and the current vaiues/sett ings. Each
of tht' selccrion 'j:rec'ns is derailed below.
6.2.2.1 Screen 1-System Option Parameters.
The Sy"nerü Opt ions rtíaj' be set fi"ol1i Mc'nu Screen lwhich rrtay appear a:". :
Menu 1 -System Options
1 System Drive ·a:
2Startup Command ="STARTO1 "
3Reload Constant =23040 (5AOOH)
4Processor Speed =9MHZ
5 Memory waits ·O, IQ Waits =O
Enter Selection :
The Logical System drive selected by the first entry is used by the Bios Want
boot to load the operating systeni on aCold boot. and on Error Exits. The
Startup command is noimally the name of aCOM file which performs additional
system initialization when first started. Such afile is normally created by
enterimz a sequence of instruct ions (fi le names and arguments) into ascript
using ALIAS. SALIAS. \"AÍ.IAS or othcr similar ZCPR3 tool.
69
BPCNFG B/P BIOS UTIL1TIES
The remainder of the entries concern the Physical hardware within the co}|]f)ute['
and generally do not need to be changed for other than initial installation.
The Reload Constant at Selection 3ruay be "fine tuned" by slightly varying the
value .The norma! effect of' this is to adjusn the speed of the Rea! Tinte
clock within the computer to allo'A it to keep proper time. The Processor
Speed (Selection 4) should be the CPU Clock speed rounded to the nearest
MegaHert z.For example. the rate shown in the sample screen is, in fact ,
9.216 MHZ. When the Clock Speed is changed, an option is offered to automati-
cally scale the Reload Constant (Selection 3) to scale it by aproper factor
based on the amount that the Clock Frequency was changed. This is not always
needed. but is generally desirable in HD64ISO/Z-I80 systems using an interrupt
clock tinier.
The number of Memory and TO Waits at Selection 5are in addition to any Wait
states inserted automatically in the hardware. For example. the Zilog ZlSO
inserts one vmit state into all JO Port addresses. Since BPCXFG is aµt'ríeral
purpose ut i}ity. itcannot F:n(j\A' thi g;. The number set with this selection is
therefore in adci'it ion to anu harcht"are in.jected wait states.
asi>: th wenu also exists, but since inaCh"ertent alteration of its \"ííiúéÑ can
resul tin bi: 'arre aníi potent la Ily dc'struct ive consequences, its existence ix
hidden and pronipted if" selected. The interaction to select option C) is:
Enter Selection :6
-- This is DANGERCUS. ..Proceed? (Y/[N]) :
I!" an tu"p1 icit Yis entereÁ. the hid: len menu i>> displayed appLarjn? ¿¡µ. lc)]!c)',',: j
for a}"AsríE(' with the' 3'fF!d'l addressin" l"Al. which alloms the Íull lMt','abyít'
range' to bc u:-:ea:
Menu 1. 1-System Bank Numbers
1TPA Bank # ·1
2System Bank #·3
i
-3User Bank # =4
4RAM Drive Bank # =5
5Maximum Bank # ·31
Enter Selection :
The bank numbers should reflect the Physical 32k bank numbers in thc sysnem
prog1"cssin? from the lowest. or first available. to the highest. The Bank
nuirbers are Zero-based. anti mar range from Oto 255 (OFFH) .The User Bar:F: and
RAN Drive Banl: x m: íy I)ej set to Zero if !Co Banked User area or RAM Oi"i\"c respec-
70
B/P BIOS UTILITlES BPCNFG
tive!y is desired. It should be noted that the actual control for these tv\o
features is in otber screens. and setting the Bank. Numbers to Zero while the
opt ions are act ive can hare adverse consequences.
6.2.2.2 Screen 2-Character lO Parameters.
Xcreeri Menu 2allows configuration of the Character IQ subsystem, to inc!ucit·
assignníent of logical derices to physical devices. Asample screen for the
YASBEC might appear as:
_
Menu 2 -Character IO Options
-1IOBYTE Assi gnment:
Conso) e=COM2
Auxiliary =CQN1
Pri nter =PIÓ
2 COM1 -9600 bps, 8Data, 1Stop, No Parity, [In(8)/Out(8)]
-3COM2 -19.2 kbps, 8Data, 1Stop, No Parity, [In(7)/Out(8)]
4 PIO1 -[Out(7)]
5 NULL -[In(8)/Out(8)]
6 COM3 -38.4 kbps, 8Data, 1Stop, No Parity, [Iri(8)/Out(8)]
7 Swap Devi ces
Enter Selection :
Selection ldeterniines v: hicl": of' the actú"e derices is assi°nccl j¿j thc aü]¿!2"¿'s: -
.-.
able functions dictated by the T{jB\"Tr-. This lcícatian in meniüry ix use'j by íhc
operat ing' systeni for t"'n,'u"ccter tO nc'rmj Iy consist in" of tíít Con"mk-. Printer
(LiSt btu"ice Jr Ci"',"C tL'1"¡ii}: }L): ogy )and an Att'i iiiary IO (l'eader an'í Punch in
CP/jí) .Tht' v".: c.c t[K'\_j¿'es as)Rjg!?c'd Iq thesü Lcy;ica1 funct ions depcrid". orj tí"í'j
t.)it-nía])ped char¿ícte]"ibtic> oF the IOBYTE. and positioning within the teíhlc'
portrayed irí this Ñent: ,
Early versions of B/P Ejio,s (Versions 1.0 and earlier) distributed as "Starter
System" and test version.> used afixed number of devices and adifferent data
structure for derice access. B/P Bios Production systems with Version numbers
of 1.! through ¡.9 ií'iA contain only four device drivers, but use the nev,c'r
data structures. Beginninsz with Version :'.O, however, many Charac'ter Devices
may be acco!nn!Qdat€'cí. with the first four being directly accessible by the
JOBYTE. and the ability to exchange devices to place any four in the' first
posi tions for acct-sí by appl icat ions programs. The above screen depicts [i
typical cíispk"iy undt-'r a\"ersion ?.0 Bicis. Smaller systems such as: jAacec! orí
íij€' Fk'l)', Tracks- \ii l]Lise cm!y four fixed cié\"icé.s with atypical \"ersion µ:uRíi)cl"
of !.l and \\'i l l no: inc!uch-' se'!t'ct ions 6or ".
71
EIPCNFG B/P BIOS UTILtTIES
Selection ]offers the opportunity to select which of' the first four physical
devices is assigned to the three loµical IOBYTE defined functions. Asecond-
ary menu wi l }proinpt you for the' exact funct ions and devices. An exampic of'
the interaction with selection lis:
Set [C]onso1e, [A]uxi1iary, or [P]rinter :C
Set Com{1], Com[2], [P]io, or [N]u11 ?
Selections 2. 3and 6 in this sample screen allow configuration of the serial
ports included in this B/P Bios. If you are making hardware changes in the
Bios, please follow" the specifications in the soUTCé code to insurc that this
utility will function as described. For most system installations corered to
date, one or more of these options will have no effect, but the capabi lity
still exists to confipurc the optiori. This selection results in a.series of
options being presented for verification or alteration. Current St·l tings arc'
listed as default values which will remain selected if no entry is rnacie before
the' ertding Carriage' Return (Enter kc'y). ASample interaction on aYASBE'. isj :
Configuring CCM1 [In(8)/Out(8)]:
Baud Rate (Max=38.4 kbps) =Selections are:
1-134.5 bps 2-50 bps 3-75 bps 4-150 bps
5-300 bps 6-600 bps 7-1200 bps 8-2400 bps
9-4800 bps 10-9600 bps 11-19.2 kbps 12-38.4 kbps
Select L1OJ :
Data =B-bits. Change? (Y/ÍNJ) :
Stop Bits =l-bits. Change? (Y/[N]) :
Parity =None Change? (Y/[N]) :
XON/X3FF Flow =No Change? (Y/[N]) :·Defaults se1eeted
RTS/CTS Flow =No Change? (Y/[N]) :
Input is B-bits. Change? (Y/[N]) :
Output is B-bits. Change? (Y/[N]) :
Selection f'üur tailors the deíault parallel port. noníially aCentror.ics prit,í--
ci" interface. A.y 'niü: previous select ions. not a! ]opt ions muy be aín j"\"t:.Ln.!1
\\'i II appear 1!) the' configurat iím sequence to retain the generality of' PI'("1"i(.j.
Current settings tin bi"aces) 'ñ'i li be retained if aCarria¿ze Return is entercci.
Configuring PIO1 [out(7)]:
XON/XOFF Flow =No Change? (Y/[N]) :
RTS/CTS Flow =No Change? (Y/[N]) :
Output is 7-bits. Change? (Y/[N]) :
The final selection (only appearing in Bios Versions 2.0 and later) allcnís the
exchange of devices. In the sample Menu 2. Selections 2-S are active dericem
with Selection 6existing in the Bios, but not accessible. Using the la:sc
se iect ion. COM-i could be exchangA with one of the first four waking it an
active device upon exiting- ESPCNFG which calls the Device Configuration func-
tion. The interaction mav appear as:
Exchange Device :3With Device :6
.'\ftc'l" thi~ c)mict'. actiu: 'á€\"icé: i\tiií be' com. CO)!3. PIOl and t: ru-.
72
B/P BIOS UTlLITIES BPCNFG
6.2.2.3 Screen 3-Floppy Disk Parameters.
Extensive tailoring of the Floppy Disk subsystem is possible at this Screen.
whi le many popular systems do not support all options {níainiy due to the
Control fer ioµic) ,ali options and respective sett ims will appear to be set
at this point. Also, while such items as the Step rate will accept increments
of aset size (l mS for Step Rate). many systems have discrete increments that
do not match allowable values. For example, the SMS 9266 used in MicroMint's
SB-180 will only accept 2rnS increments with 51/4" Floppy Drives. the WO 1770
used in the Ampro Little Board only steps at 6. 12, 20 and 30 ms. while the
1772 used in the YASBF.C permits 2, 3, 5, and 6 mS Steps. The rates set with
I3PCNFG are suitably rounded up to the rnost appropriate rate within the Bio:-i
code' durinp drive selection to allow tailoring of drives in ageneralized
manner. Options tailorable for Floppy Disk drives as seen on a YASBEC arc':
Menu 3 -Floppy Di6k Options
=1Floppy Drive Characteristics:
DrvO =3.5" OS, 80 Trks/Side
Step Rate =3ms, Head Load ·4 ms, Un}oad =240 ms
Drv1 =5.25" OS, 40 Trks/Side
Step Rate =4 ms, Head Load =24 mS, Unload =240 mS
Drv2 =5.25" OS, 80 Trks/Side
Step Rate =3 mS, Head Load =24 mS, Unload =240 mS
Drv3 =5.25" OS, 80 Trks/Side
Step Rate ·6 ms, Head Load =24 ms, Unload =240 ms
2Motor ON Time (Tenths-of-3econds) :100
3Motor Spi nup (Tenths-of-Seconds) :5
4Times to Try Disk Operations :4
Enter Selection :
Selectin? one Qt" the four items on this menu will prompt you for the informa-
tion needed. allowing you to retain current settings as adefault. An exampi e
of the additional prompts resulting from selection one on the above screen is:
cp Configure which unit [0..3] :2
Size 8"(1), 5.25"(2), 3.5"(3)? [2] :
Single or Double-Sided Drive ?(S/[D]) :
Motor On/Of fControl Needed ?([Y]/N) :
Motor Speed Standard or Hi-Oensi ty ([S]/H) :
Tracks-per-Side (35,40,80) [BO] :
Step Rate in Milli-Seconds [3] :
Head Load Time in Milli-Seconds [24] :
Head Unload Time in Milli-Seconds [240] :
73
BPCNFG B/P BIOS UTILITIES
6.2.2.4 Screen 4-Hard Disk Parameters.
The B/P Bios Hard Disk Subsystem is centered around the Small Computer Systéni: ,:
Interface (SCSI )standard. Backward compatibilitv with the earlier Shuszai"t
6 G-_
Associates System Interface (SASI) is also provided to allow older controllers
to be used. Durinz the course of B/P Bios development ,several control ler
~-
types were incorporated, wi th unique features accommodated in atransparent
war within the utilities. As acompromise between flexibility and program
size. alimit of three physical hard drive units was placed on the system
This limit does not impact the 16 possible logical drives which the computer
may handle. Asample Menu for asingle Conner CP-3100 SCSI Drive of 100
Megabytes is:
"Menu 4 -Hard Disk Options
1 Hard Drive Controller =Seagate SCSI
2 Fi rst Drive :Physical Unit O, Logica7 Unit O
No. of Cylinders =776, No. of Heads =8
3Second Orí ve :-inactive -
4Third Drive :-inactive -
Enter Selection :
'The first arailable selection allows you to select the type of" control !ci'
installed or used in the system The controller definition applies acros.: -ali
three physicz! dñrt'-m so soijie care must be applied in lÍlixirl? different con-
troller types on the same system. For example. aShugart 1610-3 control!cr is
incompatible with aSeagate SCSI o?" SCSI-2 drive attachecí clirectly to the SAS.i
bus since initiali7¿"{ticgn jnfc)]"li]atior] is required of drir"es the 1610-3 which
must not IjÉ sent to Uk-' SÁtSi ciut' to the diff'erin¥ commands. The control ier
types defi.ned in iñe initial releasc of' B/P Bias appear in Selection [as:
Select Controller Type as:
(I) (j/Yj
(2) Adaptec ACB-40OOa
(3) Xebec 141Oa/Shugart 1610-3
(4) Seagate SCSI
(5) Shugart 1610-4/Minima1 SCSI
(6) SCSI-2
Enter Selection :
Selections two. three and four from Menu 4allow you to specify the physical
parameters of one Qí' the three possible drives. As with other options. some
of the paratneter:i do not apply, such as Reduced Write and Precornpensat ion \x'itii
SCSI drives, but appear here to aiio\\ apeneral configurat ion tool .currerit
settinszs: appear in ":quiíre braces arid are selected if only a(:a1"i"ia&"t' Return is
74
B/P BIOS (JTÍLITÍES BPCNFG
entered. Asanípie entry configuring the Conner CP-3l00 is:
Activate Drive ([Y]/N) ?
Physical Unit (0..7) [O]
Logical Unit Number (0..7) [O] :
Number of Physical Cylinders [776] :
Number of Heads [8] :
Reduced Write Starting Cylinder [O] :
Wri te Precomp. Start Cy1 inder [O] :
6.2.2.5 Screen 5 -Partition Parameters.
Menu 5permits arranping the physical drive complement into Logical íwi\ét .
and dividing physical units into multiple logical Partitions.
Menu 5-Logical Drive Layout
A: =Unit O, 64 Sctrs/Trk, 4k/81k, 7984k (998 Trks), 1024 Dirs
B: =Unit O, 64 Sctrs/Trk, 4k/81k, 200OOk (2500 Trks), 1024 Dirs
C: =Unit O, 64 Sctrs/Trk, 4k/81k, 200OOk (2500 Trks), 1024 Dirs
D: =Unit O, 64 Sctrs/Trk, 4k/81k, 54432k (6804 Trks), 2048 Dirs
E: =Floppy O
F: =Floppy 1
-G: =Floppy 2
H: =-- No Drive --
I: =-- No Orí ve --
j:=-- No Drive --
K: =-- No Orí ve --
L: =-- No Drive --
M: =RAM
N: =-- No Orí ve --
O: =-- No Drive --
p:=-- Ho Drive --
1 Swap Drives, 2Configure Partition 3 Show Drive A71ocations
Enter Selection :
Select ion lallows for swapping two specified logical drives. For example.
the above screen shows asystem which will boot from ahard drive. If tht'
system were being configured for aFloppy-based system you might swap drive A
with drive Ewith Selection 1as:
Enter Selection :1
Swap drive [A..P] :Awith drive La..p] :E
Selection ?perníits defininsz logical partitions on a Hard drive. and of thc
RA\! drive. if" active. It queries you for the needed information from which to
set interna! Bius values. If com"erting from an existing system, SHOV\HL) (Sec
6.19) \\iii display the values to enter for aspecified Partition. An examí: ñc
75
BPCNFG B/P BIOS UTILITIES
of the interaction is:
Configure which Drive [A..P] :D
Allocation Size (I, 2, 4, 8, 16, 32k) [4] :
Number of Dir Entries [2048] :
Starting Track Number [6000] :
#Tracks in Partition [6804] :-
Physical Unit Number [O] :
Selection 3from Menu Smay be used in conjunction with the allocation to view
the existin,sz allocations for agiven Hard Drive Unit. Selecting 3prorüpís you
for the besired Hard drive as:
Display Allocations for which Hard Drive [0..2] :
and will show the current Partitions and allocationm As an exatnple, thc four
partitions on the Conner C:P-31OÜ depicted in the Menu Sscreen are repormÁ
hc'rt: on aseparate screen a":
Partition Data Hard Drive Unit :O
Orv Start Trk End Trk
A 2 999
B1000 3499
C 3500 5999
D6000 12803
[any key to continue}
76
B/P BIOS UTILITIES BPDBUG
6.3 BPDBUG -B/P Bios Debug Utility
This utility provides alow-level tool patterned after Digital Research's DDT,
but extended to provide amore useful user interface. the ability to handle
Z80 and ZIBO mnemonics in disassembly, and memory banking using B/F' Bios
interfaces. While the description is primarily oriented to screen output. the
Operating system permits also sending output to the defined Printer by to,sz-
gling Control-P which may be enabled and disabled within BPDBUG.
6.3.1 Using BPDBUG.
The syntax for BPDBUG is simrñe with only three variants as:
BPDBUG // <-- Print ashort help message
BPDBUG <-- Execute BPDBUG
BPDBUG [fn[.ft]] "-- Execute BPDBUG, Loading named file
When executed. BPDI3UG relocates the majority of the code to high memory imme-
diately below the BDOS, overwriting the Command Processor. If afile load i:-:
specified ax in the third method of invocation showrí above, and the file type
is .HEX. then afile in Intel HEX format is assumed and it is com"erted to
binary forní at the specified address.
In addition to the short help message available with the double-slash option.
abui It- in comníand summary i.s aval table at a.l ltimes front the main BPDBUG
prcmpt by entering aQuextion Mark. The summary appears as:
B/P Bios D8ug V O .3
-?
-Available commands:
B{ank} Bank#
D{ump} [From [To]]
E{nter} Addr
F{i1l} Start End Byte
G{o} Addr
H{ex sum/diff} Word1 Word2
I{nput} Port#
L{ist} [From [Thru]]
M{ove} Start End Dest
N{ame} FN[ .FT] {for Read/Wri te}
"O{utput} Port# Byte
R{ead file} [Offset]
-T{race} {Trace mode On}
U{ntrace} {Trace mode Off}
W{rite file} Number_ of _256-byte _blocks
X{set breakpoint} Addr
-Z{ero breakpoints}
? {Show this msg}
77
BPDBUG B/P BIOS UT)LITIES
Square braces in the sumníarv indicate optÍonal parameters. while text strings
and abbreviated names indicate parameters and types.
6.3.2 BPDBUG CQKnmands.
6.3.2.1 Select Memory Ban k. LB]
To select a memory bank in the range of 0..255, simply enter the Command "B"
followed by the bank number in Hexadecimal. Opt ional spaces may be placed
between the command letter and the Bank number. The syntax for this command
is :
B[ Inn
The Bank number selected by this command will be made the current bank for
Display (D). Enter (E) and List (L) commands. If the specified bank number
exceeds the largest bank number physically existing in the system. the bank
number will be set to the last bank defined in the B/P Bios Header.
6.3.2.2 Dump (Display) Memory in Hex and Ascii. [D]
Thi scommand di splays memory contents in both hexadecimal and asci i form.
\-\here the current byte in the display is acontrol character (less than 20!i).
aperiod character is printed in the ascii column.
Defaults for this command arc IOOH and the TPA bank as the starting addres: '..
and 256 as the nuriber of bytes to display if no End Address is specified. ic)i"
subsequent uses of' thc Dump conmand. the Starting address 'ni!i be one' Lño!c
than thc eT}ciiríg address of" the last Dump. The Bank: Number y\ i]i remaití íha{
-
last spec'ifiwi. or the' TF'A bank i!" rierer chanzet"i irí asession. The s\"nt¿-¿µ: is:
-.
D[ ][Start _Addr] [End_Addr]
Asample of the output appearinÉj! on the screen is:
-d1OO 1Zf
01: 01c;'j E073 FEQ3 31FE 0321 51)00 7E23 FE2F 2006 .S. .1 .. !]."#./ .
Ü1: O11G EIE11 ADDI 2á2ñ 2AO1 Q02E 5A7E FEC3 2018 .. ..(%*. ..Z" .. .
01: 0120 CDAC 0121 FAFF 197E FE42 20OC 237E FE2F .. .!.. .".El .#" ./
6.3.2.3 Enter Values in Memory. [E]
This comníand permits entering values into memory. Aperiod terminates entrr.
E[ ][Start_Addr]
-e1OO
:41 43 44
.
*e
78
B/P BIOS UTlLITÍES BPDBUG
6.3.2.4 Fill Memory with Constant Value. [F]
Entire: memory areas niay be set to asinple constant value. with this command.
Al l thret-' ar;zuments (Start. End and Value) must be specified, and the command
vvii! not bc' executed if fe\\'er arguments are given. The syntax is:
F[ ]Start End Value
As an example, the following command sets the sixteen bytes from 1OOE through
IOFH in the currently selected bank to binary Zero;
-f1OO lOf O
6.3.2.5 Go (Execute) Program in Memory. [g]
Execution may be started at any arbi trary address with the "Go" conmand. !f"
no targ-'t address is specified. loor: is assumed since it is the nccinál s"Lm"t-
ing addrús±, Qt l)rc)?raIÍl>; loaded intc" the Trant: ient Prog.raiñ Arca. The syntax cC
the cornníanci is:
g[ ][Address]
6.3.2.6 Hex Sum and Difference. [H]
Sñiti'ie Hcf: ¿:(l¿'c íml adüii (icm and subíracticn is perforníc: d Uth che "Fk: :" COll,-
núinC .'y'jÁ-.. tiíc cL)rlíll¡a.!í(i is c":c'c'uíed \'\ ith t\\'o addresses. both their 'ium ':
l|í[jC}Ü!C)
655 it" j! anti di!'fLrenc"e lalso níodu to 6S53íd are di splayed in that oi-ckr. Tht'
synta'· Of tl',i> cc)rr¡lÍlan: :1>;
H[ ]Va1ue1 Va1ue2
¡"q!" cx¿tlll;)jc-. ii" an oí"!'s,c tof 4SH frorá abase of OED3FH was dcsireci. thc re-
suit iiíf' gposit i\"c' and ne?ati\"e address could be determined as:
-ñed3f 43 <-- Entered
EDá4 ECFA <-- ..returned Sum and Difference
6.3.2.7 Display Value from Input Port. [I]
This coníinand will read the desired Input Port in the range of (J to CFFFFH and
display the resulting byte. Since 16-bit address calculations are used. this
command \l\'j}} properly read the built-in ports of the HD64180 and ZlSC). The
syntax of the Input comníand is:
1[ ]port _num
79
BPDBUG B/P BIOS UT1L!TIES
6.3.2.8 List (Disassemble) Memory Contents. [L]
Disassembly of executable instruct ions in memory is accomplished \',iüj thb,
command. As with the "Dump" command. the starting address defaults to 1OOH
when first loaded, and is assumed to be the instruction following thc last one
disasseniblecl for subsequent uses of this command if no address is explicitly
entered. If no Ending address is specified, 23-26 bytes will be contained in
the listing depending on the length of the last instruction. The syntax is:
L[ ][Start] [End]
Asample of an entry and the resulting output with an arbitrary program is:
-1120 127 <-- Fmered
0120 CDACO1 CALL O1AC <-- ..displayed
0123 21FAFF LO HL, FFFA
0126 19 A3D HL,DE
0127 7E LO A, (HL)
Xote that the actual bytes included in the disassembled instructions arc also
listed in contrast to other situi lar progranis to provide additional information
for you. Additionally. an e-Ura blank line is displayed after a! !unconái-
tional jumps and return.x to sc-rre as a visual representation as an al)']Qlutc'
chanze in control íjcm. Tht-" mneinonic>, are standard Zi Iosz ZiSO coc'ex,
--
6.3.2.9 Move Memory Contents. [M]
Thü command perniitc blocks data to be moued within meníory. Memory aCidres'.s
bounds checkinµ is performed to insure that overlapping addresm.s are |?-1nci]c'.!
correct iy sq that rüinc'r sFíi ft siÍí blocks of data may be accomplistcíj. Tiíc'
svntar for thi sconil1ianü! 1a:
M[ IStart End Destination
6.3.2.10 Set File Name for Read/Write. [N]
This command is teed to set thc fije name and optional type prior to arc'aci or
write operation. The nanie remains active until changed or BPDBUG is exited.
The syntax is:
N[ ]Fi1eName[.Fi )eTyp]
6.3.2.11 Send Value to Output Port. [O]
Thi scommand forms the complement of the Input command covered above .It
sends aspecified byte 'Lo the addressed Output port. The syntax is:
0[ ]Port _num Value
BO
é/P BIOS UT!L!T!ES E?PDBUC
As with ail argunienti-,. ifmorc digi ts than tho nurri!)cT" needed are spcci f'i ed.
oñi\' the last two lfor aj3yte )or four (foj" an address) are used in the ex-
prcssion.
6.3.2.12 Read aFile into Memory. [R]
Thi scommand reads the Í'i Le specif led by the Name conunand into memory at the
default address of 100!1 {if no offset is specified), or at astarting addrcss
of Offset+l0OH. The Offset value must be specified in Hexadecimal. The
syntax of the Read Command is:
][Offset]
When the li lc' is loaded, you wi }lbe inforníed of" the current sctt ing of" U):.
default address for the' base cjf current memory (PC value jand the byte M"tt'i"
the Ia"A Ot)c ]Qad¿'(! by thc E'.eaíi ("I)rr!nianl-i (\"t: j"t i.The display niiµht appear ¿:-,:
NE: {t PC
'3í32n "1l:)(!
6.3.2.13 Activate Trace Mode. [T]
T..) a>: ",l>:. l!") (lL: l)uµ'?}I:I2 PrO77"I¿ní>r. aTraci.' f'jñctioñ l.S ]RQll: dL:,í í\l]jc!") }'µ act ,-
\'ütc'ci :titL üij:'C: :)li:lli;:il"}¢:]. [.'pm encountc'riríp ahi'eakpoim (St'C X ("Qn'í!Íi¿í: Ñtjc-']o\- )
the' pro,±]"£: j]j L?n[í"l"") thu Tj'c1'jn I}j("){:|L' jjj \\iü clí t': tch instruct ion j', tí"a;'µc-i ¿.it; LÍli
'-;1- átt' tsf 1-I)'- pujo- t-' r'-.:" " C! i:-jz ' \"cCÉ alcn;: 'n'itl'í aDisa.s>¿'n!!)jt"c! i':, <. tiríy Q'j" tHz'
in<íru¿j?i("!). F.rñct int' :.y.i: tL'lt-' íctZt: i" "T' ac'ti\"¿ítt": ', tl:cTract" )'lc: i: .
:'1 fi_¿¿.f'"·""' Üt ;- !'7"·."'µ: ";í!| "run "Y\'ití\ Trace' C'ri i'-:
sc/zl3"c|p;: }lQ1r.i 'A='3L' EG=QÓl: 'Cl DE=Ó'3C£' HL=Ó0C'C) S"=D1CÚ
U.=A-$4F" !Y=FFT7 O1CÑ C3C)É301 J7 CÁCjt.
St3ZÓHl: '?L)iQ1 CL? A=CK) BC=C)(: lClCl DE=0Cít3Ü HL=CiCÓ0 SP=O10'3
IX=A4AE ñ=7F?"£ 0108 2AO50'? LO HL, (OOÜíj :'
s0zoH;7rí3?N1 '2C\ A=ÜCj f3C: zC)ÜQC) DE=GÓÜC) HL=52C3 SP=O1CÜ
IX=A4AI IY=FF"E DICE CDBD07 CALL 073.!J
SCÍZ0h'ÁPÁN1C'~/ A=QCj BC=OOO0 DE=OOO0 HL=52C3 SP=0OFE
Iµ=ALíA.E IY=FFFE 07BD 7C LO A, H
S'JZ0HC}PC)N1CC' A=52- BC=CCQO DE=OOOO HL=52C3 SP=OOFE
IX=A4AE IY=FFFE C)7BÉ B5 OR L
SI ZOHOPCNCJC'3 A=D3 EC=0OOC' DE=OO"'0 HL=52C3 SP=ClCíFE
IX=A4AF IY=FFFE 07BF ce RET Z
81
BPDBUG B/P BIOS UTlLITIES
6.3.2.14 De-Activate Trace Mode. [U]
This command turns the Trace Mode off so that subbequer!t execut ion occurs at
full speed with no trapping. Entering asingle letter "U" deactivates the
Trace Mode.
6.3.2.15 Write File to Storage. [W]
This corríníand is the coniplenient to the Read command couered above. It assumes
that the data to be written starts at 1OOH and writes the specified number of
256-byte blocks to the file last specified with a"Name" coirnar.d. The syntax
of this command is:
W[ ]#B1ocks
6.3.2.16 Set Breakpoint. [X]
This conímuná is uscd tú taµ locations v: ithin the prograw to be exec'úIcÑ uncle'r
BPhMXí mm when executed. \\'i ilteinporari ly stop esecut inp and either retun":
tu tht- BPDJ3UG pronji")t or pi" int informat ior. for the Trace output .L-;j te: 1v\()
bre¿1kIjQiI]t" ntay be act 1\"9' at any point in time. Tht' syntax is:
XI ]Address
6.3.2.17 Clear Breakpoints. [Z]
Thi.s cQn!ní¿1: )c! clears al !breM:points sUt \\iti"", the :: commarxl citet! áÑu\'t'.
Entering the single !erte1" "?1" clears all bI"ea;: ;)oir,t>.
6.3.2.18 Display On-Line Help. [?]
Entering asingle Questiorí \kírf: ("""l as a conunancl cíisplaí>. the' Buiíci-ln Icíg
c!isípláy containinp asunima:ry of" the conmands arailab!e froíii \\'iúúñ I3PbBL'C,.
82
B/P EllOS UT1LfT!ES BPFORMAT
6.4 BPFORMAT -Floppy Disk Format Utility
BPFORMAT is the ?eneral-purpose format routine for Floppy Fisk Drives in the
B/P Bios system. It autoniatically adapts to the specific hardwari: used iri
your computer to present asingle interface across awide range of platforms,
and incorporates the abi }ity to format disks in formats not implemented in
your computcr. This capabilitv allows you to format disks for exchan,sze with
other users in their natire disk format using the same library of alien disk-
formats used bv the EMULATE proµrant (see 6.8).
-
This program is B/F' Bios-specific and will not function under other Bios
systems. Its operation is the same under banked or unbanked systems, and with
the rnany types of' physical Disk Controller integrated circuits available. In
the ini tial version. the fol lowing Controller types are supported:
765 1692 1770 1771 1772 1790 1791
1792 1793 1?95 2790 8473 9266
6.4.1 Using BPFORMAT.
6.4.1.1 Built-in Formats.
The simpies: t\'\"á\" forrlÍa[: in2 diskettes is to use one of" th'-' forniats' inc!uc¡L'¿:
in tht-' cur1"enEly-ru!;nin!? B/T' Lsios. BPFOR)L'\T may bc' invoked by siníply ent c' t" i-nµ
the' progríírñ nar[!c' .()1" tu' fol 1()\\ int' il\t"i th adrir"c' lt't tct" and colon áfj :
BPFCRMAT D:
Optiona)jy. ¿: ?Canit': ic!i!"'g'·¿í('} \" ñiX,\' j'er]¿1cc the' c'irirc !í'ítt'r an'-j \'.."iií !'jI"n]: it tlzt
cii"i\"c ass7\)(j!(it¿: \i i'-lí t!it-' !'¿ill:¿'("l (Éii"L:c'to¡"y. Tl'r e> anipfc. it" acl irecíory namc-c:
WORK: i :.z ";jq'f" iñ·j; ?() l't'· ii'¡"i \"(-' C: .i. s'.' r lL) .thc conini:-írui
EJPFCRMAT WORK:
\',"QüÉi !"¿)r;íi¿¡T !l't"iu-' (" :.'\' »ú:íi!]',"c)kcci in c' iíhc::' of' tht' above mcinner> .N'FORMAI"
iii II iíst the but It-in l()rrl;I: L:"3 a"caiíab!e for this drive frorri those included in
tht-: fi lc [)r'í"j.L.1r) ía: ui opt ioua! !\" 1)PFiZ.LIF!. see sect ions 4. l and 4. 2) .(in l,'
tho"tc' formats whict"i e-tact ly mtch the drive characteristics will be prc'xenteci.
so only SO-track f(jrnl¿"zty, u'i ll be of i'ered for an SO-track drive and so forth.
For e-\atíl;)}c'. the offerinµs for ajO-track 5.25" disk drive may result in:
Available formats are:
A-Ampro DSDD B-Ampro SSDD
Select format (^C to exit) :
As precautions apainst inadvertently formatting diskettes, conf'irmat ion
proriipts are included as the propram progresses. and the opportunity exists to
eqcape from the-' format p1"oAraní to Command processor. An example appears at
this poirit where a(":o}ítrol-(' aborts the' format operation.
83
BPFORMAT B/P BIOS UTIL!T1ES
6.4.1.2 Library Formats.
If formattiñfz of adiskette is desired in aformat not supported by the built-
in selections featured in the execuíin2 Bios, the library of formats used by
EMULATE (, see 6.8) may be used. Reasons for using the library may range from
the need to format in aníode used on another type of computer to achoice made
internally unavailable by sizing constraints, as when tailoring asYstem for
-
Boot Track installation. Whatever the reason, this flexibility is offered as
an inherent feature of B/P Filos and is specified by specifying the LOption
when invoking 13PFORMAT .If" specifying the desired drive on the command line
as in either exauíple above. siinply add the option character at the end (vÁth
optional slash) as:
BPFCRMAT D: L
If you wish to be prompted for the drive letter as part of the I'rc)graI}i flcm.
the slash becomes mandatory to inform BPFORMAT that you are speci t"yin>' the
Library option instead of Drive L: .The invocat ion thereby becomes:
BPFCRMAT /L
When executed ',\'i.tñ TJltj Library opíion, you will be presented wi th ame'nu cR"
forrííats which niay 1.)e· used with the physical drive as defined in the Lsios
header .A:íaníµje display appears as:
Available formats are:
A-Act rx SSDD B-Ampro SSDD C-VT1 80 SSDD D-H-100/4 1Cí
E-H89/40 IS F-H89/40 ID G-H89/40 lX H-Kaypro 2
I-Osborne IS j-Osborne ID K-Ampro DSDD L-H-1 O(J DSDD
M-H89/40 2D N-H89/40 2X O-QC-l ODSDD P -Kaypro 4
Q-MD-3 DSDD R -PMC-1O1 S-Sanyo 1000 T-TV 802/803
U-XBIOS-3 2D V-XL-M180 T2
Select format ("C to exit) :
Enterinµ: one of thí' letter:scorre>;pon[iirl? to aformat will Sél ail parariletc'rs
and proceed í\'i th the format operat ion. Enterinµ aControl-C at this point
wil jreturn you to the Conunand Processor at this point avoiding any inad\'eT"\-
ent disk: formatting.
The Assemblv source to the Format librarv is provided in the B/P Bios pa.s'kagc'
as an aid in accepting. forrnats not included in the default distribution pack--
age. or to experiment with new forniats.
6.4.2 Configuration.
T\4"c) opt ion", é.\"i >:
tfor cu-"noní tal Iqi_ ing TIPFOFNAT 1() operatc in artíeíhoú yí-iú
find lkí)S-[ corÍjioriat)]¿-. The fir: ':t is aQuic·t option which will minimize e:':tm-
neou: -, üutpui- tc the ('(7r|sL)it·. It is set by aBoolean flag consisting of aByíe
84
B/P BIOS UTlLITIES BPFORMAT
at an offset of li (OBH) bytes from the beginning of the prograrii. A Zero byte
in this location signif les Verbose operation where all defined prompts and
status information is displayed. ANon-Zero value (normally OFFH) indicates
that Console output should be minimized with only essential output displayed.
The second option is for selection of the File Name and Type to be used for
the Library of formats used with the Loption. The default value of this
entry is ALIEN.DAT (in formatted FCB form) which is also used with the EMULATE
program. This field begins at an offset of 12 (OCH) bytes from the beginning
of the program.
6.4.3 BPFORMAT Error Messages.
Must be wheel to FORMAT!!!
As asafety feature, only users with Wheel privileges ríiay foj"ñkit
diskettes. Thi serror message ident if les an attempt without the proper au-
thorization.
*** ERROR !Not B/P Bios, or Old Version !
In ñ1oxt cases, this error v\'i II be seen if an attempt is riiade to
format aciisj: uncki" aBios other than B/P Bios. If some of the mandatory data
structurt'q haí"e bet'ri altered. or if an attempt is made to run the reíecís: c'
version of t'/P Bios under one of the early test versions of B/P Bios. this'.
níe.ssage uill also be displayed.
*** ERROR !The selected format is not supported by FORMAT!
Thü> error will be displayed if aformat froní alibrary O!' form'-u
i-> inconipat ibie v,ith thc' specified drire. such as if a5.25" forníat is sclect-
ed foj- an S:"cii'i\t-.
m'* ERROR !The detected FDC is not supported by FORMAT!
The Rios reported ?! Floppy bisk Control lei' (FDC) that is riot Ít!
the' list of controllers supported by BPFORMAT. To vi eít the ]ist of cQñ-
trol ]e1">) su})pc)1"í("L]. \_iét\' thü internal Help by using the double-slash opt ion.
*** ERROR !Disk is Write Protected!
An attempt was made with the Write Protect Tab ON (for 5.25"). OFF
(for S") C)l" iii the Protect position (3.5") for the specified disk. Set the
disk to Read/Write by altering the physical setting and try to forrnat the disk
again.
*** ERROR !Disk won't recalibrate
The drive heads could not be restored to Track Oposition. 'Thi !,
error is often due to afailure in the drive mechanisni, but can also be caused
by deformed diskettes or loose drive cable.
Format Error :xx
An error was detected duriníz the forwat process. The 'Fu: "\í'i ti1)¿·
the He.xadec'iníaj byte returned by the Bios portion of the forniat routine'. and
bits set to a"l" value should represent an error code decipherable fi"oHí tlit:
FLK Data or progranntÁnµ" sheet.
85
BPFORMAT B/P BIOS UTILITiEs
+++ Can't Open :fn.ft
BPFOR'vÍAT could not open the format library fi le. To access a
format library, it must either be in the default library. or accessible frorií
it either via the PUBlic bit or along the ZSDOS path.
mformats available for this drive!
This error will be reported if no forrnats (internal or from a
format library, depending on how it was invoked) are supported on the speci-
fied drive. For example, if all internal formats are for 5.25/3.5" drives and
the target drive is specified as an 8" drive, then no formats will be avail-
able if BPFORMAT is invoked using the internal format method of operation.
86
B/P BIOS UTlLITIES BPSWAP
6.5 BPSWAP -Logical Disk Swap Utility
This utilitv m \,jv\s vou to exchange the drire letters ciefinirw two !o£"ic¿i'
- . ,
drives or partitions within the system It performs an-y operat ions necessary
to properly adjust the Operating System to account for drive redefinition, and
relops both drives using Dos Function :rto force rebuilding of the Allocation
Bir Map.
BPSWAP is aB/P Bios utility and vtill not execute under aríy other systení. it
mar be operated ir": an interact i\"é mode, ful 1\" "expert" mode with arFuni€'r!t: ·,
·
passed on the cQR¡!rlan(! line, or acombination where the first drive iettt-'i" lX
passed on the' c'omniand linc and the second entered in response' to aquery. if
running in the interactive' níodc', entering aControl-C instt-'ac! of adr \"'_
letter \l\'j }] interrupt the prugraí:íand return to the Comriiand Processo:". FiPS'i'n'S
is rU-c:·:ecíItaÍ.};E undúr 7cjj'k \\'ittj the "GG" coriir!"lanci.
6.5.1 Using BPSWAP.
6.5.1.1 Interactive Operation.
. . ,.. - ...'i-
To c-\"c'CUtc Í3!U',', ',!"' i:i'Í'F' '"" zl' :" '"'" '''gtx-u j/7 e'·j¡)..j:!giC" ñi'njL ,s;q¡!"'l: 'X)'\ ':'k:c ,. ,m
7
]}}"¿: F!"¿¿:':. ! Ut': '- "i:-]?::í¿2!ilL' ¿j y. :
BPSWAP
TÍ?.-' :Ji'- -:;'¿¿; '.'.i: :1;'·: , t'h¿;; tht-· S\"Stúiii :sr"unninz' ¿': Fl/P ILcí'. §';: t!7t-:' )}','.¿': "::·.
Liil",í; ;7"jjj, :1"> cj¡y- íi:tIii,:''jñ'\ jro: |rliE'!}: .anu! c!i splay tht-' proíii]4 :
First Drive to Swap [A..P} :
-·J .':t,:-
\', ', i\' ", iA'"'l.:z tj! i\"' lc uE'" (uppv :" \,) :" l\j\' L'l"C¿: t"·é l'J'í,uu ! \.i i t' t, :{' }Y, ,
tlíí sj"'-'\'j lg-: -,,,., '- ("' :'".·'," tl"rouµí: "!""' ..4! liñ'íAid cha?'a¿[t': ""z. l-.- -. !LSl :
{""ñf "Á—{" ','h)clt ,? ''"r :'- lI)'.' }"' '"o '" :"íi'i, .'.',' i:!re"·ü ]'t i li repeatúA ;" "'('"" ''!·' '. I: ..
4"- 7"w· · ,"·' c x".i't": -" '-ta.·i"'t-",t·, "l
iI. . .\I:a\£. !e' :l(-' .\'· lit" riCk\aj1\$ G!" ]\E~j }t': tL'7" Iyi ch: jg; t, t,' ,tI: ,I"}l, g, , SU
ji;.'j'".'.,i>c" :rzú¿m'"ttcl ',',"j!-j; ?"!jr{-';: ::l"'1 :
Second Drive to Swap [A..P] :
7'"·'S',': .",:' rLÍ'b!)("/: }z!"6 ¿(i t'r.t: "i.--. ,¿'. :líA point 1r a:iidentical ni,'ínnei" tí' thí" í"ii""t -
:"c';"'j'¿tt¿'í!l} i"'Io|"|j:"L ir: ,; f'c: ' :iraí id lette:". or the abort charactcr. \t'hen a\"¿'.;jj
let Lt-i" rccí' i\_cí. ímcl'í iíYzica! drive is reassigned to the physical definí-
tí(j1í: -. o! tltc Qtíjc': .
6.5.1.2 Command Line Operation.
RPKQA!' can accept and parse d:ri',"e letters passed to it on the CQDírh[: ncí !inc-' in
Qr(icí" to inc !1j('¿' CÍ!Ú\ ue': chañgeú: in Startup scripts oí" other a! la:-: comíancÉ -..
To invoP.c the prograní in thi emanner. enter the program namt' \{'it!l t\i"¿j dri \"¿'
Á?ttc'rs ín the-' l"ang{-' cp ",\" through "P" with adelimiter between eac'h fiéií: .
!ach (Yj" t!"it- cl:"i\"t' !rü ícr>i nic: ybe fol !ím'ed. by an opt iorüit CCjÉt7ñ. b.£liIl¡j'.: Í::
c'h¿,! ¿j¿ ¿i;';"-' ¿-. cím .t·¡uí'<. Áñ..i Cormíia. Asu{íl[ílary of the' coFl: r!et€' S}'l: t¿íi- i:-:
BPSWAP <Drv1>[:]<tab: :,> <Drv2>[: ]
87
BPSWAP B/P BIOS UTlLITIES
To illustrate. the foiiowim are valid cornme.nds execut insz BPSWAP:
m
BPSWAP A: E: <-- Exchange Edrive with A-
BPSWAP D, H<-- Exchange Ddrive with FI
If an invalid character is detected for either or both of the drive letters
when called in the Conímand Line mode. operation automatically reverts to the
Interact ive mode and the respect ire prompt (S) will be giren for val id dz'ive
letter{s). This feature permits ahybrid mode of operation to be specified
wherein thc first CÑi\"é letter is passed on the Command Line, and the second
entered in response to the second drive prompt.
6.5.2 BPSWAP Error Messages.
The only cu"j"q3" níessage v: hich may l'c' pi in'.cc! by BPS\4A-"' is in response to irnc: '-
rial rout ineú, which \"¿íii(ia'LE' Ü)c presence of a13,/!' Blot,. Any at t enipt té-' i"ua
thi" utility on othcr Z"')iL)se$ restlts in tite crroí":
+++ Not B/P Bios ... aborting +++
afít'r "nhich pc'int tÍ2c' i)1"'-'¿': "¿-l!|"f ¿i!'.-" i't .- ano! cont rc'í ret L'!"ñ: .to'. thc' (.'C)!ll¡"ii¿'l!"i'.! 7'1"c)-
cesú-ÜI .;';¿í eficít c': íCií"S\t. ¿;j :('{::£l:. ionu ','. ill Qccu: "if í!zis error i> dis¡'!cíye'.:.
8g
B/P BIOS UTILITlES BPSYSGEN
6.6 BPSYSGEN -System Generation Utility
BPSYSGEN is our generic version of the classic SYSGE!\" program used to place ar}
executable systení image onto the boot sectors of aFloppy or Hard Disk. It
uses information provided by the Bios in the form of DPB/XDPB data (see 5.2.31
which defines the physical and logical drive characteristics to write system
information from the system tracks of one drive to another, or from an image
produced by MCNXSYS (see 6.16) to the boot tracks of adrive.
6.6.1 Using BPSYSGEN.
6.6.1.1 Interactive Operation.
The basic Interactive mode is initiated by simply enterinµ the program nanie at
the Command Line prompt as:
BPSYSGEN
Yqu will fiio>t be prompted for the source drive from where to obtait abcncit-
able systeni imaµe, then for adestination drire to save the image. Td provicíc
a\"isüai clue that the program is executing, aSéÍÜés> of period'ú, is pz"iñtcuí on
thú' .scrt't'n \\"i th ea.t'k period represent iñ€ aphysical sector of daüm At iht.
coI]c'iusic)r} of the opt i"at ion. the program exits to the Con:ni:-tncl Prcj{'L'6f.í"): "
promp ¿.
Abinary fijtj |)rociucL'{: i É).\" \fo\"': S\"S (sec' 6. J6! maj he pkíct-'d the sys: tc:ií
tnicks of ¿l hcu"ci c)!" f!c)I?i'"\" í!isP: by sj'ecifyin° tin-' t' lle ñáElé as aconímanc! !:ríe
.-
al"?uIlien[ ¿¿$ :
8PSYSGEN B: ZSDOS64 .BIN
\4'ht.'n ac:i\"ateci in thú: 1háññ(T". you \\'iij be prompted for the des'rinatio: í ch 1\'¿-
it'tttí' af tc'r B1'S\"SGF\" jocíd'-í the image file and validates it as a\ziiicj Y"st€-íi,
im¿-.b: t' ..4]1erT)[dti\"U'I:\". \"o'j niay replace the file nam' v\'itíi adrive ie:tú:
foilo:ied by aCcÜoñ to autoniatic'al ly load the image from aspecifíc drire. and
Ft l?]"O!"l"l;)tC'(! for the dc'stinat ion ái'i\"tj.
6.13.1.2 Comman dLine Operation.
Asinszle operation mar be coniMetely specified from the command line arguments
ML
thereby avoiding drire protnpts. When invoked in this manner, the first argu-
ment specifies the source for the sysrem (drive designator or file) with the'
second argument being the drive specification on which to place the bootable
system ima,t'e. The syntax for the Command Line method of operation is:
BPSYSGEN {d: :fn[.ft]} d: <-- dis drive in jA..pj
89
BPSYSGEN B/P BIOS UTILlTIES
6.6.1 BPSYSGEN Error Messages.
*** Read Error
An unrecoverable error was encountered reading either the boot
tracks of adrive, or aspecified bootable fije.
*** Bad Source!
The source drive does not exist or could not be selected.
*** Write Error
An unrecoverable error was encountered writin2 the boot tracks of
the specified destination drive.
*** Bad Destination!
The destination cii"i\"és does not exist or could not be selected.
*** No System!
There arc" no raiic! Sysieni Tracks on the Source oí" bestinaticm
Drive. or an aní)nÍa]c)us condit ion (more than 3reserved tracks l
waí, cit"tectt-d.
*** Can't Open Source File!
The spec'ifieci boot in}¿-¿?e Í'i le could not L)l' locatc'íi. or an error
occurreti duÑng: the atíe!(lrte(i File ópe: i.
90
B/P BIOS UTILITiES COPY
6.7 COPY -Generic File Copy Utility
COPY.COM is afile copy program derived from the ZCPR3 !'4COPY tool writtetí by
Richard Conn. It blends the many modif ications by Bruce Morgen. Howard Gold-
stein and others in MCOPY48 with further enhancements in the spirit of the
ZSDOS environníent .File date stamping is supported for the full range of
stampinµ capabilities provided by ZSDQS. Auser-definable "Exclusion list" is
now supported to prevent copying of specific files or file groups, and two
options to ease file backups with the Archive bit have been added. COPY is
also níore user-friendly than MCOPY, and provides increased error checking and
user feedback.
COPY only operates in the Command Line Driven or Expert mode. As with the
ather utilities provided with ZSDOS, COPY displays ashort Help message whcn
invoked with adouble-slash argument as explained in Section 1.2. The Héj['
messa,ze also includes alist of arailable options along with Ü)(" effect of'
each when included as command i ine arµuments.
While COPY is ready to run without special instaliation procedures. you may
\\'i"jj íc) chanpe t!r: cíeíau!t parameters to customize it to your operating style.
In this manner. you can rriininíize the number of keystrokes required to perform
rout inc o!-)¿'rat ions by avoiding passing many opt ions on the command line. To
set dcfault conáit jQñs. insure that COPY.CON. COPY.CFG and ZCNFG.C(-): \l and
arailable to the: >.ystem. and execute ZCNFG as describeá in Section J.S thc'
ZSDOS !,(] 8Y'f¿inu¿£i .
6.7.1 Using COPY.
The ba~ ic s\."nta-\" fcjí" COPY fol Io\\"s thc' oriszina! CP/M format b^i" list in::ip!-
de$[ inaíion drive/user. an equal sign, then the source dr ive/user and i'i It:
nanie .An alternate synta-': acidcd hy Bruce !'jorµen in NCOP\"4S permits specifyin "
tl'al}Sjí"ei"S, iri the "Source-Dewt ination" forní popularized in MS-DOS. in th>í
ai ternaíe form you first enter the source drive/user and f i iena: ne. as;mc'-'.
and thcn tht-· desñination drive/user and optional filenariíe. Usinµ the D(j¡"l!t¿li
sylilt)Qiog: \". thc-' s\"ñtáx is su!1¡lllaTizet": as:
COPY dir:[fn.ft]=[dir:]fn.ft,... [/]options
or COPY [dir: ]fn.ft dir:,... [/]options
If no destination filename is specified. anumber of unique files rnay be'
copied to aspecified directory by catenating source files separated with
commas .\\'here adestination file name is specified, both source and des[irÉ.í: -
tion file names and types must be free of wildcard characters. This popular
"Rename" feature in a copy was a much requested acidit ion to the ZSDOS cc)7\"
utility. Options to tailor the actions of COPY may be appended after the
source file list.
Yc-·t another method of transferring fi Jes was retained from the oriszinal !\lL'(j)p\"
root s.I!" no ciest inat ion driue,/usei" is recognized in the cornmand i ine a:szu-
-
lñt: j]LS. al lreferenced files- wi !1 be copied to adefault drive/us±r locat ion
91
COPY B/P Bios UTILITIES
which is contained in the header portion of COPY. The default location is
Drive B. User Oin the distribution program but may be changed as described
below. If options are desired with this syntax, the slash option delimiter is
Manda tory. The syntax for this method is summarized as:
COPY [dir: ]fn.ft,... /options
Various conf iguration opt ions detailed later allow you to customize COPY to
suit your operating style. For example, status displays of each operation may
be suppressed for a"Quiet" mode, verification that copied files match the
original (or at least produce the same error check code )riíay be enabled or
disabled, etc. If amethod of Date and Time Stamping is actire under ZSDOS.
the original Stamp information will be transferred to the destinat ion fi le.
The follovcing examples in the "Verbose" method of operation will serré lo
illustrate by copying afile' froní the current Drive and User area to the' sariic
dí"ií'c·. Csei" 10.
COPY ZXD.CCM 10:
COPY Version 1.71 (for ZSEÜS)
Copying C2: ZXD .CCM to ClO:
-> ZXD .CCM. .Ok (Dated) Veri fy. .Ok
OErrors
In this case. !\ó file cjf the sanie naníc existed in the c]estiI"latic)r} area. bu t
some forw of Fi le Stamping was act i\"v. sq the source staníp inf"orníat ion was.
successful 1\" tráñsfér'"cz' to the dcqíinriti()r¡. Perforníing tht sanie-' ri:-t i\Ñt"\"
with the other syntax now produce":
COPY 1O:=ZXD.CCM
COPY Version 1.71 (for ZSDOS)
Copying C2: ZXD .CCM to ClO:
-> ZXD .CCM Replace Same (Y/N)? Y. .Ok (Dated) Veri fy. .Ok
OErrors
Since COPY ñO\l\' detected adestination flle of' the same nante. and Fi le Síanínim
as well as duplicate checking (another option flag) were in effect, COPY
compared the Last Modified dates for both source and dest ination f líes.
Finding amatch. the prouipt "Replace Same" was issued, and received a{i" les
response to copy the file anywar. Other responses, depending on the results
of the date comparison are "Replace Older", which means that an older fi le
exists on the destination, and "Replace Newer" which means that you are tryin&
to replace anewer file on rhe destination with an older version.
Asimilar error check is made if aduplicate file is found to determine if the
file was found with the pL'Biic Attribute bit. If aPublic file is detected on
the destina[ion drive. awarning to the effect is printed. Answering Yes to
rep!aceníent at this point v\"ii lresult in aRead-Only error unless ZSDOS has",
been set to pertntt 'A'I"i[eg to Public Files (see 2.S.3 cjf the zsros 1.() 3lanuai i.
As stated earlier. COIl" has no Interactive niode of operation per se. but tij't
92
B/P BIOS UTlLITIES COPY
Inspect opt ion provides a means to select files for transfer in asolu€'\i'he¿t
interactive manner. In this mode, ali files selected by the file specifica-
tion in the comniand line are displayed, one at atime, and yov may enter "Y"
to copy the file. "X" to Not copy the file, or "S" to forget the rest of the
selected files. An exaniple copying all files from the current Drive and User
to User 10 is:
COPY *.* 10: Ii
=Y Version 1.71 (for ZSDC'S)
Copying C2: ????????.??? to ClO:
Inspect -- Yes, No (def ), Skip Rest
BU16 .CCM -(Y/N/S)? Y
BU16 .MZC -(Y/N/S)? N
COPY .COM -(Y/N/S)? Y
COPY .Z80 -(Y/N/S)? S
If operacinsz in the \'t'rbosc niocie. status on each ii le wit Ibe printed ¿g.y tht'
G.
copies progress.
6.7.2 COPY Options.
Sereí"al opt ion characters are availai: Ae to custoniizt' COPY ope,"at 1q!"!>. :"\l":)xt l7Í'
thesr opíior'.s níav be set as default conditions using Al Hawley's ZC\"FG Config-
uration Utiliu'. A! terriat i\'¢-']t". vou ruar enter ant' of thezí orí íht- con,iüaníi !int'
te' a!ter tht- funct- i(-/ñ5 cjf" ¿'i sinµ'ie o}.ftú"at iori. 'The comnianci iine opt ion ci]aj"¿.': -
te1".q art a:-- follo'í>:
A-4rchir'-'
E-Tl'"{ f'ol" l-íltí' Iú: istencí'
I-Inspect Fi!e>
M"3fu !tiri(¿' CO¡7\ "
N-\"0 repictcemc'nr jf File exists
O-I!"e"t E:·:istencc' of R,/O Files on Destination
Q-Qu let
S-e.íciude System Files
V-\."eri fy
X-Archire Only if File exists
From the brief syntax summaries listed above, you will note that the standard
option delimiter. aslash, is optional if both source and destination specifi-
cations are listed on the command line. If only one specification is listed.
is when copyin? to the default drive. the delimiter is Mandatory. Each option
is described in the following paragraphs.
6.7.2.1 Archive Option.
When this option is act i\"c" either by specifying in the command line or a> a
def"autt. only files which do Not have their Archive Attribute set \i"iiÉ Msc-
Iected. After the selected fijes are copied. the Archive Attribute on tht'
Sdui'cl' file will bc Set u-) indicate that the file has been "Archí\_ecí". V\'hen
93
COPY B/P BIOS UTILITIES
used in conjunct ion with the default drive and user settin?s, the Aoption
provides asimple method archiving files in asingle user area. The de-
fault for this option is Off, for !\jo control of selection by the Archive
Attribute. Adding the Aoption to the corninand line reverses the conf igured
setting.
It should be noted that this option is incompatible with the "M" (Multiple
Copy) opt ion. The first copy operation will set the Archive bits on sejecteci
files, and they will not appear in subsequent copies.
6.7.2.2 File Existence Option.
This option controls the test for an already-existing file on the destination
dr ive by the same naníe .Adding the Eopt ion to the command Iine argument
rererses the confipured setting. The default in the ZSDOS distribution ver-
sion is On. or Check for Existing files. This opt ior: does not affect the
check for PL'Hlic fi les on the destination cirire. which is always active.
6.7.2.3 Inspect Files Option.
As illustrated previously. tii€ I option prm'ides aweans of select i\"étj' copy-
inµ files. without entering the name OÍ' eacl^. file. The distribution defauk
for this option is off, or cic\ !\"'j[ inspect the selected file list. Specifyiní'
this option on the conwianc! line arguuíent list reverses [he configured settiríp.
6.7.2.4 Multiple Copy Optiorí.
Thi" ol)ticj!: may I)c l!sl'cj to ccy'y a file'. L)i" ?rQUl? of files to the SáíMj' íi: "É':C'
sereraí tinie.s. as \\Íj€ñ nlakin2 sé\"fj"¿-"j copies of the same fije group on ciif'ñ--r-
.-
ent cIiskm Apronipt is ?i\"el') bcf"oi"e each copy operat iozí begins. and "Ají-! ní."ty
abort at thc prÜn¿i'¿ .c)j" c!"iange cíix7.: sbefore beginnin>' the ccq'y. Thu distribu-
tion default fen" ÚllS' o;ñicní is off. for !\"g) Ñultipíe copyin}. Aclclinp the M
opt ior, to the cQrl\}lja|](i !int a1'szu!]len[ list re'ierses the configured sett!ñz i"Ctt'
-
thix option.
6.7.2.5 No Replacement Option.
When added as acomruand line argument. the Noption will not allow replacemení
of afile which already exists on the destination Drive/Usei". This option
cannot be configured. and a]Kays assumes the same initial state when COPY is
called. The default initial state for this option is Off io permit replace-
ment of existin2 files.
4-
6.7.2.6 Read-Only File Test.
t" ·
This c'j:'t ion. when added a.s an arguiüent .reverses the com igurecj s€'tt ing oí" a
fÍá£! wliiclí checks fo: 'the existence of' fi )e( s) satisfyin& the specified name
and type with the' Re'ac!-ím1y attribute set. 7f this flag is active and aRead-
94
B/P BIOS UTtLITIEs COPY
Only file is located satisfying the criteria. the file will not be automati-
cally overwritten. The E(File Existence) fía? will still dictate how other
files are handled.
6.7.2.7 Quiet Option.
When used on asystem with ZCPR3, this option causes areversal in operation
of the ZCPR3 Quiet flag. If the ZCPR3 Quiet flag is active. COPY with the Q
option operates in aVerbose niode. If you do not use ZCPR3, or the ZCPR3
Environment defines the Quiet flag as inactive, this option will disable
unnecessary console messages for aQuiet mode of operat ion. There is no
default condition for this option, and it is only effective for asingle cal!
of COPY.
6.7.2.8 System Flies Option.
This option controls whether or not files with the SYStein Attribute set will
be located by COPY. Tl_íe distribution default is off to include SYStem filei'
in COPi" file lists and permit copying of such files. The defau! ti1:
"q" he
confiµureci as ciescrihed he low. and the default may be rererseci by add: ng an S
in the conmand !ine opt Íc)!! ]ist .
6.7.2.9 Verify Option.
To aclci anieas: ui eMcorúi dencc' thíi.t no errors occurred in aC:()F'"i" openit ion.
the \'é: ":tj" (jl'tic)l} may 1r- ac'lj\"¿ít€'d. \\"hen acti'."e. the destination file is- read
in orái-r tc. CL)!íll)UtC (A '-" ye'! ic Pec'undancy (heck (CHG) word. This \l\'CCCf is úien
c'Qr{i!-)¿!red 1á9 a\"áiút' cAcuiated when reading the source file. If tht t\iíj
\"¿Juc'5 ñkitCÁ ycm CCU? be- reascmah!y sure that the dest ination file is :Ú!"fj¿
copy O!" the ."Á)ül"C't fi le'. The dis: trihution default for thiu option ix True u-'
veríl'y c'aí:'h fj Ie' copied. Thi !> opt ion nríay be changed by c'oñ!" iFzuI"¿Lt iiV!. ji
rererseíi i: 'y acijim" ¿i Vtí": cconiníancí lire option list.
6.7.2.10 Archive if Only if File Exists Option.
Occas lona! jj"4 you níay wish to update frequent ly archived f iles, to the sam
destinat iorí> in asimp1er manner than naming each file. or by using the In-
spect optioti. The Xoption was created for just this purpose.-. When this
option is added. COPY first searches the source directory for fijes which hm"ti
not been archived. then checks the destination directory for each file. II i!
match is found. the file is copied. and the source file deleted. unless it is
marked as Read-Only. There is No configurable settinl? for this option wliidi
is alvcays assumed to be OFF when beginning COPY.
cjk
~~
EMULATE B/P BIOS UTILITlES
6.8 EMULATE -Alien Disk Emulation Utility
EMULATE locks any or all Floppy Disk Drivels) to specified formats, native or
a! len, from aDatabase of formats. It may also be used to display current
settings and restore drives to auto-selection if the Bios was assembled with
the AutoSelect option (see 4.2). The Floppy Disk format informat ion is con-
tained in afile nained ALIEK.DAT whose use is shared with BPFORMAT (see 6.4).
This sharing of aconírrton database of forinats a! lows forrnatt ing, as we } ! as
reading and writing of alarge number of the hundreds of formats used by CW: C
vendors over the years.
6.8.1 Using EMULATE
This utility is only usable with 13/P Bioses which hare been a.sseiubled tiith the-'
Auto-Select opt ion (AÜTOSEL) act ire. Tñi sis the normal mode 1c)i" re leaxe
versions of B/P Bios, ajthmgh SO!hé vers ions placed on the boot traci :-> O!"
floppy disks war hart' a sca led-down complement of bui it-in formats to reduct'
the system iniage si zc- (see JA ).EML'LATL can be executed eúhe: "in a:ainíc'i"-
act i\"é query/response uíode or in acotnrnand line "expert" níodt' with arµtuue.nt :'
passc'cl on the' c'Ljnjl),¿ir)cí ! int". The E'vFjLATE syntaú: is:
EMULATE // "-- Prinz Built-in Help Summary
EMULATE [/]X "-- List Current Floppy Forniat ,settiruzg-.
EMULATE [/]U "-- Return All Floppies to Autoselect
EMULATE <-- Execute' in in'.el"acti\e QLíe1"\"/F: es;"jt-?Én:--i£ Ih9CÉC'
EMULATE d[: }<-- Selec: íbrm: "n z:fíú"i\"c d: inte1"¿'ic'ti"\"¿'É.\"
EMULATE d[ :]Inri] <-- Set int í\_í' tí: fO!1|lL"¿', ícj entry nn {e-tper'.)
To keej" tijc' nL",!!!};t_"inz of' formats in the r)¿l',al)ast' file conu,tarit .there!)\" ¿·¿ ](?1i-
.
in" thc c""',") ""i: I'liLAÍ'- uS" ccni i£u]'¿¿[ ion. u!lfQl'n"lat'4 in the A' IL')!J "\"i" iilc a'""
m
iociáed V\it!lQUl ra! idat iOl"i azainst the actúa! cirivt' paranrít'cers. Once aíorrí,u-
seiectc'úl. the l"ec!L2il'(f(.! dri'u- clí¿%1"¿1c1-e1"ist ics. (diG: size. nuF:!.)er oí" sicics.
spec'cl anci nunibe': "of" tracl-" :' are couipared 1-o the physica dri\"c| !)al"antete!": >
containej in í!m H/F' Rio", hcad': 'r structure lsee S. 2. l. CO3"FIG+3S i.f¿ thc
st"iecttci i'oi"niat C(-Áñ bt. ac'co!!micjcj¿zíeUi by the physical drií"e. then the' forruaí
infcu"niat ion ix !Qacied into the' Extended LjPH/DPi3 fielch for the specified drive
anci the' formt ic'c'kc'í"! to prevent re-ass ignriient on warni boots..
The follow'im fm"mats are currently included in the ALIE\".DAT file. the source
code for which is included in the distribution version of B/P Bios as
ALIE\'.LIB:
1Actrx SSDD 2 Ampro SSDD 3VT180 SSDD 4H-1O0/4 ID
5H89/40 IS 6 H89/40 ID 7H89/40 lX 8Kaypro 2
9Osborne IS 10 Osborne ID 11 Ampro DSDD 12 H-1OO DSDD
13 H89/40 2D 14 H89/40 2X 15 QC-lO DSDD 16 Kaypro 4
17 MD-3 DSDD 18 PMC-1O1 19 Sanyo 1000 20 TV 802/803
21 XBIOS-3 2D 22 XL-M180 T2 23 Ampro SSQD 24 DEC Rainbo
25 Eagle-IIE 26 H89/80 ID 27 H89/80 lX 28 Ampro DSQD
29 Amstrad WP 30 H89/80 2D 31 H89/80 2X 32 XBIOS-4 2Q
33 ces SSDD 34 IBM 3740 35 Bower 8"10 36 TTek SSDD
37 Bower 8"2D 38 CCS DSDD 39 TTek DSDD2 40 TTek DSDD1
96
B/P BIOS UTILlTIES EMULATE
Current drire format alíocations may be examined at any time with the Xoption
which will list the W-character naníe the format assigned to each floppy drire
in the system or state that it is Autoselecting. The Uoption removes at!
fixed formats, returninsz them to Autoselecting.
G—
6.8.2 EMULATE Error Messages
+++ Can't Open Database File +++
EMULATE could not locate the ALIE.\'.DAT file in the current!'."
logged directory. Solutions include setting the PUBlic attribute ALIE!\".EjA]"
and insuring that the Dos Path includes the drive containing the file.
+++ Format Not Supported on this drive!
Self-explanatory. Coinníon causes of this error are s'Nect ing ?11
¶)-tracÍ forniat on a'lO-track drive. or an S' forrr'xí on aS.2S" drive. Check
the ALIE!: .L)AT source cocía to detenuine any needed dara on the exact d: :ive
recjui rernents. for each foriuat .
97
HDEOOT B/P BIOS UTlLITÍES
6.9 HDBOOT -Hard Drive Boot Utility (tailored)
HDBOOT is aspecialized routine which is only available for those computers
which feature the ability to boot froní Hard Drives froúi acold start such as
the YASBEC and Ampro Little Board computers in the initial version. HDBCxjT is
acustomized utility which is tailored for specific versions anci will not
execute on B/P Versions which it does not recognize. It modifies the boot
record of aFloppy Disk System image placed on a drive by BPSY8C:E\" (see ñ.6)
to allow the system to be started froni the Hard Drive at power-on or fron"t a
system Reset.
6.9.2 Using HDBOOT
HD13OOT is extremely sirrqYe to use, and accesses the FliP' Bier: Data structure'-
OÍ' the target systení füj" any system-specific data required. such ab iniíia: i-
zat ion parameters fc^r the' Shüycii"t /'Xébec control ier tupes. V\"heri inmi: eci. tiíc
exisrins: S\"±.tÉfh .!.6 c'Mckeá to inxure tñat it is avalid B/P Bios uersiom I!"
~.
valij. you U!! he á4.ct! tt3 :':j'cc-ify \\íúctj of the three possible phy: jiL¿|i S': :-J
units acct'us. and 1i"qm tnerc' Olí the operation is automatic. asáñ"ip^'
screen fcjz" asuccesúf t!) e>: ecut1o!"} of this uti!ity is:
B/P HDBOOT Utility Vl.O 31 Aug 92
Copyright 1992 by H.F.Bower/C.W.Cotrill
Configure wPncn unit for Booting [C'..2] :O
Target Controller is :Seagate SCSI
. . .Reading Boot Record. ..
...Writing Boot Record.. .Ok. .
a0:base>_
It should be noted thü't :ts:."µ.tQ!1'í !i"íüst háru been placed on the taz"gc". un t"j,:Ú2
Eli'SYSG1A (sé2 l). L'.) !)e{"c;r': ú'xeccí iny thi 1> iliij'. or art eri"cc niessap'-' '.i! ¿!b'-
issued and the operation aborLc...l.
6.9.3 HDBOOT Error Messages
*** No System!
The spc'c'ifieci target L'nit does not contain avalid Boot Systc'ñí.
F'lacc' a\"¿1] id Boot Track systc'n"í on the unit with BPSYSGE.\" and execute HDBC)Ü7
again.
*** Invalid Unit Number *** .. . .-.... .
The L"nít numbei" .Y!}c"(: 11]c"(i on inc c'o!Í: IÍla:]..l 1ii"i±" !5> lr;\"a!]cl. f-i Uk-'!'
it iíj not "(.)". ":"or "2". ()1" tijt' L.|I"}i1 is not ácti\"€.
98
B/P BIOS UT1LITlES HDBOOT
*** Invalid Boot Record ***
The Boot Record existing on the specified Cnit is not valid for
this type cit" Computer. \"orinal causes are no systein currently exists on the
specified unit or the S\"$télÍí in place is not avalid one for this system.
Both of these may be corrected by placing asystem on the first physical
partition of the unit with BPSYSGEN (see 6.6)
+++ Image is Not B/P Ellos, or Wrong Version +++
The image read from the Boot Tracks of the specif led system wasí
not avalid version of B/P Bios. The two most common causes O!" this are: not
placing aBoot System on the System Tracks with BPSYSGEN. or alteriÍ]g the
fixed data structures of" the Bios source code in a way which violates the
standard layout result ing in asystem which cannot be recognized.
+++ Unit Not Active! Run BPCNFG to Set Drives.
The' xpeci!"iecl Hard Drive Unit (O, lor 2) v\aq not tagµ'úd ¿jy ,--z:
:
actire unit. This can be chanszed bv first execut ing E"PCXFG (see ts.2l o:the
— .
üxc'c:utinµ nienic'ry system. then re-iní"okinµ HDE3CO7".
+++ Not B/P Bios ... aborting +++
An aUenípt 'ji'ás uíade to eüecute this ütiiit\" on asystetn u'i)ic: '? ím--
ti:_'; run!;in!: ü!KÍt-!" p;,"p F:iü~. boot the- svs'Letn with ai3/P E;ios-ec]ui1)[)s¿'cj sy>teni
arid 1;"r íi'ujt!,
*** Read Error
An unj"ego\"L': "alj]e error occurred while t]"yin? tíu real tht' tÁÍúj 't
>ys:erl¡' '3, boot F:€'CC1l"Lt. Íihizi is IlíO.'>t often due tCj media errors, tiie i'íj":,-..
cylinder oí' the targ-'t unit and cannot be rectified. Anot he :" caí'st' níay l;n- ¿j: j
incoz"rt'ír- cic'finit lOll O! tí:í' pEysicul chal"¿¡cte7"is'L lCS of the conu"o!!e: ¿ir!d,"cji"
cIr i\"( ,
*** Write Error
Atí t11]I"L"c(3',"t': ":i|")!€' €'1"!'c\j" c)ccUr1"c·Ll whik- t:"ying to \'$"ri1£' íii: c 111'3 lú'ic'ü!
Fíocí Rl·coi' iu' títt: Hare! hi i\"t uní t.if ast-'cond attenipt at exí: catio:"í is
Wl",UCCé! sñ:l.it I"'¡"L'j){·.l)É: \" in(]icate3 either an incorrect phrsica! dc'finiíion 'm"
í!ít' Ii:_i:d !)]"1\ uUñ!'í .()j' unrecovei"ab le inedia errors on the firm cy! indtu' C!'
tijc dri'ie .
99
HDIAG B/P BIOS UTILITtEs
6.10 HDIAG -Hard Disk Format/Diagnostic Utility
HDIAG is apeneric B/P L'ti lity program to Run Diapnostics, Format. \'ei"if'y aíícl
examine Hard Drive parameters using any of the defined controller typcíz in a
B/P Éiicjs system where such capabilities are def ined. The ability to select
the controller type in the beginning of the program is allowed to enable yuu
to check and initialize drives using controller types other than that defined
in the executing Bios for added flexibility. The following controller types
are handled in the irtitial B/P Bios release:
Adaptec ACB-40CÜA
Shugart 1610-3 /Xebec 141(jA
Seagate SCSI
Shugart 1610-4 (Minimal SCSI)
SCSI-2 subset for Conner and others
6.10.1 Using HDIAG
This utilitr íoíí: lQ!lj' c)p{^1'r,tes. iii an int("rac:ti\"e l1iOCÍC'. so iIis Si[}j?'í\" iI!-
vokt"cÉ with iLx nanu-' anO no ai"gummts (other than the standard cimiblc--s iaslí
Help l'egues'L !. \i'i"!cE actirateci. it reads the' controller type f"í"o!!i tiic ii/'i"' !3io: .,
header structurt' añil as: i:u you if 'tlii sis thc ccÉn[r()!jeT type you 'nish to usu.'.
If you í',"is!í El) ljút-' adiff't'rt'n: ccmiroi Ic'i" typt-. sjcñ as diaµ'nosinµ aSeaszate
Scsi ttt'i\ ti" :"i"c)i|j i: syt'teni v\iá ch }\¿1> á!\ :\da!3[e¿' control leí" for normal use. you
níay al Et'l ÜlC c();)Z7'í.'É] 1\-']' Cit ttnit icm !c)!" the renímndei" qÍ" the !-iDj.'i' ;seq.bi9l"l.
:".l inu.rací ion til1"[)L|,t!! IR) the- niain loop prompt may appear as:
B/P Bios Hard Disk Utility VO. 6, 25 May 92
Controller =Adaptec OK ([Y]/N) ?:N
[O} OW7, [I] Adaptec, [2] 1410/1610-3, [3] SCSIi, [4] 1610-4, [5] SCSI2 :5
Functions: F-Format
V-Verify
D-Run Diagnosti cs
P-Show Disk Parameters
Select ("C or ESC to Quit) :
6.10.1 .1 Show Disk Parameters. [p]
If you are running HDIAG on a Hard Drive Unit which is already defined in the
Bios and was previously formatted, or one of the self-identifying SCSI drives.
then you may view the current drive parameters with the Pcommand. The dis-
play varies with the control leí" type and the amount and type of iríforíííat ion
that is avaiiahle. Scuiíc oí' the data may be from Bios definitions. and othcr
data from either the' control Itn" (e.g. Adaptec) the drh"e electronics lsCSi
or ses i-:í).Saniples of thú foruisí of inforllíatiorl art":
lOó
B/P ElfOS UTlLITIES HD!AG
Unit :OCONNER CP3100-1OOmb-3 .5 <-- SCSIl setting
Total Blocks =204864 (12804 Eq. Tracks)
Sct rs/Track =33
Sector Si ze =512
Interleave =1
#Cylinders =776
Num of Heads =8
Unit :O<-- Adaptec ACB-4000. Syquest SQ-3!2 1() )93
Total Blocks =22140 (1383 Eq. Tracks)
Sctrs/Track =18
Sector Size =512
#Cylinders =615
Num of Heads =2
Reduced Wrt .=615
Precomp. Cy1 =615
Step Rate =12 uS Buffered
Media type =Removabl e
Landi ng Zone =615
6.10. 1.2 Hard Disk Diagnostics tD]
Sortie cii'i\"és feature bui it-in ci :ag!]c)k', icu rout iñr"> v.'hic'h test tÍ1£' unit '.s eic"c-
tron-!c!; and ntedia. Otiíc": "S\"~Lcl!¡3 .qi1íll)t\" e":ecute the µoí':cr-up s3'j¿!U{-: nj'g \\'!a: c';i
gt'i]L'¡'"¿|j j\ ir.clLtc?e6 ur¿'¿luL: lcc cl Stif"-tf""í\S. :[Q1"lí}a!ly. only Üie' lC ;'",!tiaíi:
Í'unc'í Íd1i Ccill !.)L. rúl icci u!). anj i-6 ínc 7udtú! in the s8tar)ci:¿rLj fa! j' it-' Oí" lí: }i-4U;
f'ji!c't 1c)!!> \\itá thi'- C{)l7ilIi: -zj1'.]. Sai1jí}!c' cutput r€Nu!tir!I" froni thi: -' f"L!!í'j'L ion ir:
Select (^C or ESC to Quit) :D
Unit Number [0..2] (^C or ESC to Abort) :O
Re-lnitializing Unit :O..Ok
..Waiting for Ready..
Pau>t'> may occut" in the ext' jUt ion cjt" the sequence, Iííost not iiealÁy ail er rh':
síatu.s proinpt statirw "Rt—4nitializing Unit" before the "..en." ap¡)e¿-:l">. -
IJepen[!ir}? on tM exact system this tinte is often when the actúa! cc)ntrc)|!(:l"
electronics are being checked. and inay involve moving the drire head which can
be arime consuming task.. There is also apause very often aftc"i" the rro!li!'F
". Naitin;z for Ready. .". particularly if the heads were moved and must be rc-
positioned o\_é1" the outer cylinder of the drive. When the drive returnb ;-¿
ready statum then the rííain select ion menu is a?ain displayed and HDIAG i:-.
ready for another coínuiancl.
6.10.1.3 Verify Drive Media [V]
This function permits e\_aiuaEing the condition of aformatted drive to identi-
fy defects to a\"aryin? extent. By using amix of defeating the Error ("Cd"-
rect inz' c'c: 'cit \\iwi"í' pQ$bii"'iL. and enabi insz or disabling the lndiuiduc: iSét-tCY
-
cheeP'-. cl l"e!?Lti\eI: b" e-\tf"nyi\_e. albeit o"fte: itiníe consurr!ing. non-íit'st[l'c'¿i"\"L
e-
suuu", cjf the' f-iñ\'"t' unit may be obtained.
101
HDIAG B/P BIOS UTlLITIES
Select (^(' or ESC to cµiit ):\'"
Unit íCumbei" !(). .2 j(^(' o!" ESC to Abort ):O
Verify individual Sectors (\'/l\"l) :1\'
Verifying Unit :OCO\NEE: CP3i OO-1OCMb-3. S
Block 891
. . .aborted. ..
6. 10. 1.4 Format Drive [F]
Settinp all of the data storage areas on the disk to aconstant value. and
renewing the control informatior: on the drive is the purpose of this function.
It is destructive. and any data on the drive will be lost. For this reason.
several checks are included in the progTaIjí to insure that you cío not inadrer-
tently actiuate this conmand.
v: ñi le most of the inf"orníat ion neecjt'd to í"c/I"¡iíat acir j\"e is aval }¿j}": ]¿' S!"üm
either the Milt-in data whicii cari be' :rea':í froni the drive oí" controj!ei". ür
from the Bios data areas. S.C)llic items ai"e st ili required froni the' usei". 'ic/ú
\\i !1 tht-t"t"f{-)rL' !)c- axkecl to prcn"icíe any data necessary to format the dl"j't"r. i;'.
the oidí-'r SASÉ g7ystelll> {IMO- :
.Xc'g)Lc. etc) this can aríiourn to ¿i con>.ici¿ral)lL·
numjer of er,trit'~. F"()}"tuI1¿lt€: }\". forncitt inz Qt" drives is not ofteíi recjuirc'íí.
-
and tM |ÍlLti^Lj{! "'" j"c;í!|t",Ltir.: "íVjt"' iii Hi"'7A'"; is flc':iMt enoayh to allo'.í :i"g:
:'i'
range ol" dt'ri cé: -¿t"? iu: counecuA.
6.10.2 HDIAG Error Messages
Sé\"cÉ"Á t'rj"Ül" 0ie»sa,2tj': >\\ ili ijc presented !'0)1" speci fic pjL"c)|)iel}íg) t':](-('k'j-ntg-l"'-':j ]l'í
thc {)l)e]"¿!ti(.);? cjf ]j[ó7'\(,. Yarn" O!' the !1iesµaL"es \ti jibe spec.: ilC LO C¿'í"t¿l¡Ii
cj'crat jQjj6. áñt-i n: :'I""7 \'. jii Chr°íñgt tííí-: spectí"i jinfcu": íiat ion de!)¢'nciing cm 2Í1'j
C'¿"l!ja|)1íitit'j3 c'f CM control!c'í' type seiec'.ec'. The lñOSt general of the»ü
c'oncúns the' S(-'S1/'3i\LS! Sc'i!>'£ c'o!Ii)lj¿]nL"l. The' !\"e\¢'c']" SCSI systems Ubc "L.\tL?ntlet: :
Sense" w!"ii ¿fj cam l t'tj7"1! rmre inforlÍ)¿-¿t ion than the- basic Sense ralue> .\íhen
Exíencít't-i SCÜXt- i" ("iE'Lectcci. tht' "ken"" uaiut- i> displayed in many error lí!c"ss.;1g-
t"'" ratht: "thau thti ba: -ic "Seu1x£"' bytt.: .Consult the pro?rarríming rüanucN for the"
:syt^c ific c'L3nti"L: I¡I(i'l' cr Cij"i\"e Í"c: rthe specific meanings of these bytes. S"cc!: ¿,
niessay-' \í"i) lU.bL|cl|íy be displayed a.s:
Error! (Comnd =xx) Sense: xx
or Error! (Comnd =xx) Key =xx
Also. to proride adc1itiona1 information during operation of many of' the func-
tions. the raw status byte read from the controller when an error occurs is
also displayed as part o!" an error message as:
(status =xXH)
The interpretation of the hexadecinial byte presented níay be gathered fi"olíi the-
í)rogranírliir}µ manual for your specific drive or contro!!er type.
102
B/P BIOS UTILIT1ES HDIAG
+++ Not B/P Bios ... aborting +++
An attempt was made to execute H1)ÍAG under aLiios other than BIT'.
or níodificat ions níade to the' l3ios altered the locat ions or values needed to
correctly identify the system.
**** SCSI Block Length Error !
This fatal error niessage will be displayed if the Command Descrip-
tor Block returned from the Bios is too s[l]all to allow the extended colüü!and$
needed for the requested operat ion. It usually results Í"roni alteraticms u)
the Hard Driver níoduje which change necessary values.
**** Controller Not Readable !
HDIAG could not read paraiueters from the drive or conírolicí".
This v\'ii lonly appc'ar in the R(Read Drive Pareuneters) funct iQñ, when thí
controller type is "om".
**** No Diagnostics for :<contyp>
The (Qrit}"olle]" selected cannot perform Diagrmst ics in away U!.,: -
HñIAG can access qi" pert"orni the needed func't ions. This v\"iji only appear in
the' D(Perforní !9iaµ"nostícs) funct icm.
**** Verify Not Available !
The .specific d:"?\"±'/'cc?}"}í.z'cf!ie!" sck-'cteíl htit.. rí': tbcc: ítítÁ !?!LÑ ,7.{!e·-
qut: tc'íy to alío','. \L'1"il"!c'?Lt1c'n thti ¿j'i"\_t. Thi s\',"i l!on íy a|'T)c?¿: " in the V
l\'ei"ify) Í'LUÉc't 1s!i ahcn the' corízrü!!cr type is "c/\\"í ".
+++ 1610-3 Initialization Error...Sense =XxH
An l'1"]"(?}" "Ká" dett'ctéci sending the initiaiizazion btri_n? tg a
.7htt,-c,. .Í(Ññ-j or \"cijcc 14!OA controijer. Insure that t}íi: 3i-I i!"!l' c"-"·i": "-: -2
tyj'í- O!' cont!"L]li€'1 settinµ' for \"ou i" heircíuaá't' coní" igurat ion. ii\', i: ! ouly
a|)l)€a1' in the Vl\"er: Új"; f"urícl ion.
103
INÍRAMD B/P BIOS UTlLITIES
6.11 INIRAMD -RAM Disk Initialization Utility
I!CIRA\1D is aB/P Bios utility that initializes the Directory of aRA)! Drire
and optional ly initializes it for DateStaiuper (tni). P2LXjS. or both 'types of
file stamps. It contains protective features to preclude inadvertent initial-
izat ion of an already formatted RAY Disk, and may be command line drivcn for
execution from within STARTUP scripts.
6.11.1 Using INIRAMD
This utilitv is designed to be operated with Corr¿!I"land Line arszuíñents, but
features built-in defaults which can be configured by either overlaying bytes
in the beginninsz of the prograll} t\"i th new" default sett ings. or 1?\" configuring
-
with Al !Iauley's ZC\'F(í tcm!. Tc execute with the default setüngs. simply
enter: INIRAMD
The' coiuplcne synim: ': !"c/j" ]µ'iF: µ\\:!' is:
INIRAMD [d:][/][Q][D][P]
6.11.2 Comman dLine Mode
R\' enteriní-' al"gu!íie-nts on the (.'olíinia:1¿ Line when I:':lKj:'::) is i!1\'('É.Q'(} ,$Lú"L ."¿l !
irñerríai default rajue's can be see to tho speciíic setting'£ desired ai thr-'
-
tinie. The Í'irst arszuinent expected wheri parmriz the (olll¡1}a!lL"j Linc raí liu¿,
~
Drire Letter. Tl_: isiu opt ion,: icind v,i li orerride the defauú ¿;"i\"c M: ij'ci It
into the' Pl"Oµ1"¿i¡: i. Tl\ x!'fF'Li$'"\' :íij"i\"c· other then t!_íc default, enttu":
INIRAMD d:
Ext ran{"c)U: -> !>i"c)ll)r}t an'.! ?71Z¿Ltt!"3 lIíc'ssa£'rb can be t\"ithht£jci guriñz t':u-'cu- i(")É[ :"
%
-
Iy:IR^L\íí) 1)\" tithei- s:gíi- tiríg ti"ui cic'f'au !t"Quiet" f' Úlf! eníbecicíeci 12 the P!"O?1"'¿l!l..
settin,z the' "Quiet "i lat' ir} ¿jlÚ En\"irQnLÍi: jn¿. qi" tmssinsz aQtiú> an argUjí}€;"j:
when inroki.n;j t!it-' p]"c)?rcLl::. Inií iai i:'hi;,' the RAJ! Drive in Quic"t melt' u.>in: zLÍ!c
default cirive is then ¿,cc'Dlíji'! !s!ít·d by entering:
INIRAMD Q
You may aisc' spec'iiü" which types of Date/Time Stamps to add to the' RAM dri':e
durin¿7 preparat ion a"ith the P(for P2DOS Staííips) and/or Dargutrients. If not
operating in the Quiet mode. 1\"IRA)ÜJ notifies you which type(s) of Stamping
methods hare been added to the RAY Drive after the directory area is initial-
ized to ablank raiue. Initializinµ drive M: for both types oí" Sramps then is
initiated by enterinµ':
INIRAMD M: PO
1Q.d
é/P !2!QS UT!!-!T!ES !K!!!2AMD
INIRAMD Error Messages
+++ Not B/P Bios ... aborting +++
An artempt was mide to execute tllü ·'\'.1 umier aHicis other tF]¿ír: bh',.
or modi fi cat ions níacie to the' Bios altered the locat ions or values nc'eded ("t:
correct lv idem in the s>ystéñi.
+++ Al ready Formatted. ..Proceed anyway (VI {N] ):
This wa1"nir: ? anci prompt v\itj be issüegg i!" jr"!!¿A\fL) cietc·ctec7 ij_f¿
duním" f"i le ñáñit-- t: xúd as a tag thar the RAY br i\'c is al reach" íorrnattt'C. 7k'i
ifz. ñiOSt often seetí in ':ysíerns that contain battcry backed-up RA)! arid ]N]!.'.¿','\·!'l
is invoked cithc"r direcr 1\" or in aStartup alias scrirt. To rlíirliníl7€" íh'.
appúarancc· cit' tlii s: ñlí'S""¿i£'{' i!' you desire to hare the RAM Disk init iali: zecÉ !1_,
the Stai"tuj' ":crirt. iñÁúdt" Uíe fol lc)\\'jn.F:
IF '" EX M: -RAM .OCiO <-- As: 4u!1k? RA'I |")isk j·h ,'ñ;
INIRAMD M: <-- Asxuminz RAY bi',k i", '.l:
FI
+++ Drive d: does NOT Exist
l.]tl"]t-'r tlie (iC'i¿'i[.l!t or eg: ni1c';l dr i'je g}!"t'¿'li!\'tí ln¿zzúi'."titi""'
1\"Ii-:..!'":' \i¿_j"; rnm~ nut iH·e'í d:-""ínt'd tc? the' sy.'bte[l{. ()ñc pos: -: i|)} iit\" iSi that tlít-
K·'.\i I)f!u" \.',"u" ") i¿¿;"ny ""l i(2 '" r"jt"j }jnciet ínt'G círn'e ícttí"r. ('At' ct: rh"' {i '" i\"1- :á ""- ', '" :1
níet,t' "\/,"j iÚl hí'í'\7u. (.'1'[ tori 5If" you v: ish to check the' j'/"j\"'3 ¿z",>É]gtAniL'7]7-y: .
+++ Drive d: is Not aRAM Drive!
!",1 }hi-":'tML"i(£!¿,u!t c) t" e:q""'!tciz di' i\"1? >j"'jj" :íIt .;n ¿¿c"j :í".í' ::.
[-\jp¿,"y" \'t(j'x ?. \"¿'tfiCi :¿j"j\"c·. hut \K?.ü ño!- ah>\f-'t i.lr?\."c. A'". \',itñ t!í£: l";E'","i.): .l
eri"ot". ("'Kt' r')¿7:',i-,il) l;jj.\" iii th:tTit 1-:.·'.'! I)!" i\"c" Y\'tlú-, s_': :ír""z'\- '(''j;µ."S. I!'.';" C" 1"·. .
\'\"jj ;[- I"! 'ii ¿. "i c:' !anüi !"1( '" t \' l'ü ,t'. cf';j4 ':\"} (., oDt lg'y St{"' ': !}zü É" t!t-' i:!" ' "\ '.: g"":,'" "
ñÑñl: -,
iú:.
INITD!F2 B/P BIOS U7lL-!TÍFS
6.12 IN! Tl)l R-PZÚcg Stamp Initialization Utility
l\"T"j"[): R r]"Ep¿í!"es} cliy,Pq Í'c)1 1'2lx)S-type f ile stamping. It does this m" repiac-
inz every fourth entry in rhe disk "s directory tracks 'n'ith atirúe and da'>-·
entry which is prefixed with aspecial character {hexadecimal 21 ). Existinp
directory entries in the fourth position are then shifted to the first c"nt': -r
in the next loµicai st-'ctor and the initialized directory sectors are written
back to the disk.
**^'*: ****'¥.?:*****-*t:*-¥*:<::. \', AFt :t T!\" g****>(**: ****.*******-*¿:*¥.*
*tk"jTl)!k should not be run on disks containing valid Date- *.
*Stamper file stamps since' it rearranges directory data. *
*To install both I)aíeSíamper and P2LXJS stampinp on one '"
*disk. s1áI"t ri'ith ablank disk, or one íí"ith no datestaníps "
*of either type and rt':' Pmth pLu'[)s and T\'I7'i)IF' on the disk "
tbefor·t. L7}n; it. iming othera'ise wi! linvalidate any 'i
*ex 1st :s[arlir tiata. "
'k.*.Z"***.>: &'**S'Z:%:*.Z.*b:á:&*Z:*j*:&::·'&:Z:*%:G:*'**:**%" %:*:'4"*á:Q"z'*2:.$"*'%'*¿'*"*.z:*'g"*:i'*z:&":
6.12.1 lNÍTDIR Interactive Mode.
lnirdir can bt" run :.\ L'j\.!lor ¿Ill 1n[t-'rajT ¡\"t-" !ikkj- Fj.\ 8lr!l!"!y C'ñte1Uñ" !t:.h,t!':-
ai t!íí' í"Ünír!,;l?2("i l'¡"c)!;';";í .c)!" ii! L': pcct "-fñcit"' tn" bf'L'. i!ring (t cit_i\'t' lrttcí" C(-> ¿j:
clr?'-])lÍt-'n-[ cm CM corr,ríútn:"l i int- .!1! thí.' Intt3f"at: 'tl\"e nmc.ú. \"ou t\'íii Fu- ¿i"-.i.: t: ii,1'
i-i cit"i\"c ft: ííc'1" l\'í:}{:!á ::i. ,!:'épt'í-i iy í!"x-' CÍl"!\'¿' [i") initim izc "n"ith l'7i.K.: .'.": :·, i. a!'iii.3 '.
it' tí'j ljútcbtan"c"'"" '"7'!\í!(',.|'·" '" i ]' J't 'ic'u'"íeci ("", ¿'it'" Ms?". I", ' l i'l i- i-,'r' 'J ,1
Kt?!ú1lñ? ¿;jjt"; ¿-j'i.'z il\'\ }1) "',iij tC|3]"()¿"C'¿'-! ";j ñOf l,"i€'f' I). !L,L bcÑoí' i. 'l'é' aroil
,
j}µ;' roµ: -·.ll')]!!2.\" N't))-7, c:f)l!í,'.' arí.' r:-ft. :jLáh,j" !nio!"'ül{í[iotz !r(7tli l)¿it.U>.E: 2ll}:'L!".
thi> rt")..jz: :,..' 'jÜú'". l'"i)" mI"tíl" t:"". trt'shiy-! (")l"rliát íéíi or blank. dr 1\"€: ",. "} ir.-'
J-.\"1'1 Z C,_·. ("I 'j' ! .\" i "i"; y':',' j', j",1ítq'""j 'ii'.- )} ¿l."'- :
INITDIR // ·'--- Prini SU!)í!íKí!"\" ht: 'lp messx>:
INITDIR <-- i::.:rc'-ñe' in Eníe: rxcl i\-é Mod
INITDIR dl:j"-- :nltiali7e I)í7\-e P:
6.12.2 IN1TD!R Error Messagez: .
Directory already initial ized
The selected disk is alrt'a: h" prepared for P2i.)O$ stanípm
Illegal drive name
I"hú chiíracter entereci was runt in the ran?e Cit "A" thru "P' .
Not enough di rectory space on disk
Tht.' directoru on the' selected disk is more than thT€: L'-z"(3"úr[í]"I
i"ul i.Kot enc)'j£!7 spacú i:-. áúcí! lNAü u.-) stlprx)rt P2Hü$ ii íc stamps.
.
Di rectory read error
.'\1', éT1"Ü!' k¿ib t"!í(:c)tiT)1L'1L'tj in re7l(i}T't 'íM cíi :':É cÑTec"Tor;'".
10€
B/P BIOS UTILITlES lB!!TDI!2
Directory write error
An error occurrúci wMle writin;z thú imualizúü cñrec1o,'"r. !t
\'\i it probah!r result in loss of file data.
--> DateStamper !!!TIME&.DAT Fi le Found <--
Proceed anyway (Y/[N] ):
The special DateStaníper !lITlMFAuDA'l file exists on the' íiisk. 1
other files are also on the" disk, mos-n of the TjateStamper time' and dart- intüí"-
mat icjñ wi iibe lost .Cm treyla|\"-t'c;rníaí[ed or eny'ty disks, no bateSíaniper 1iit.'
stamp data exists. so ir is sate to answer with aY and ini[iali7e the ciisF,.
107
INSTAL12 B/P BIOS L'TI! 1T!FS.
6.13 ÍNSTAL12 -Boot ii rack Support Utility
lNS"íALl2 -install U'R. /.S1XFi. FJ,./P Bios in a!\)O'\x"Sj"S "t":pe' image
from standard sÍ7€· (2k í.:CP, 3.5k bOS. ""4.375k Bios) Í'i les
JNSTAL.!2 is the latest modification to the ZSDOS INS7"ALOS utility distributed
with ZSlX)S 1.0 which autorñatical ly overlays your computer's System Image file.
such as MO\"CPM.COM (CP/\l jor MOVZSYS.COM (ZklX)S 1) program, or Absolute System
Model file (e.g. .CPMt4.CO\!) vÁth ZSlxjS or ZbiX)S to produce añt: "Q\ !"i le con-
taining ZSl7-)S/7bi-K)S in'neaci of" your original Fsasic Disk. Operating íSystéñí.
INS1'AL.12 also al Io'a's you to set the defaults of various ZSboS parameter: ',
ciur inp the insta ilar ion fú"oce.ss (tijc'st' paranieters. rriav aIso he changed later
with LÑ-' ZSC'()X|'l(F propranil.
!YSlAi-!? js dí'>>igr't-íi tc' lhjtÚ-- í!-it: insta llar ion rr()ct·y¡s Cl:- ea'-.': as pos: ',it.k- .
ii ithl:¿y"]"."\.Í i :'t"ot: Í)t,!\ iüaci jf'j it':' froií' ai ! cii"i\"és cinci um'r areas Í1"o!íé Aj: tG:
1'3 l:.l.rrur chí'ttcr íCü'f i'í e:\,tet_tKi\"t-. rñtí Section 6. i3.3 Qi thi g; r!iánuF} lull;
ex!'!: ·ii!í< ali ]>:>É"i','j! l "úri"or [íje": sa,2e->. tinai jy. you ínay safelu abort !\"S"iF^z!. :' '
at ru': u!;i" ¿"¿' tpc'ínt> é")\" t3r'.'y>!ng (('nt!¢l!-(..
fíe'í"í";;"L" u'. 1'1: i ':S"i'AL !"" .e:rmt c- tha' at"." ñC'C"¿'Sh?. :""\' f" !!t"sí fj"CU!"i ycm !" F\ .".' '!'. i'. ;;
a:í(i/'(')" 7.Yi.KR-. hi <1 i!»üt !o"/ !'i ".E íírt' prt·qt: i"r :
(; '\tí !"\)°: í"-! '. .FU-: tt)rn!¿2t 'úcj ¿dsgQlíl!?!'," Of' fc,ii·' i-.$icj"> (!b1()\"!"'Y: =}' :-
(? Z.M I'..'J3. ,-'1·:: jeplac{T"if' L),)L!"atir")7 Systerñ!
c) L"l !·:.n.l-.ri .lÍ'. ii: .i¿.i,í·.! c)}" oinet (LJ!t7}q-. vruc Ii! rt'p!¿1c}l!g í.t'l.,
i') !\5'! ;,' '£.( '.' .l
"iPjC- Icu Íu'ÁÑR,"7 iiit· t';"íjj,, \" ji't" }\./i' it.io: -lús'tributicm I.'lsk. '-'j',/"\í ("'" )!E>'r'. g\'·.7L-: !.
j! 'U: iín-'-1 ¿Ü$-,í' 1")l' dcLe>'"jl'Lc:
(x ."'\jí')\ u>.j"y ,i)(N lls/l' t' io: --, }.,4lÍ.)'\'(.F"íl,(."t.)['! i; ';p,";í; ,' ,·\í()'\:"'g?\g{.(""[i {)'í¿>'..':' !.
()/ .Y_~Zji;, Iñíaµ-: ti ít· fui" Ky"1eiÍí') sniín r: -': the-' Oneac ON!
6.13.1 Using 1NS"iAL12.
'iCj run 1K'S'l'Al.-l E. nm: --:'- usc ;"> :-4rKjuic! sinípiy enter
INSTAL12
at thc· (jornníancí }'rorrlr)r ."i'bi5 tells IK"S'LU-!2 that you arú instaüirm iZ S1"STc': t
segííient cu"er asystem Image re locaí iQñ t'i le. such á5 Mc)\"µ SYG.('OÍC. yo\"c'p: q.(:o\!
(-)í" 1$' )\')'. S\'.S .C( N.If you neeti tu irc'.tal lasegtnent O\"él" an Absofutc' Sy>teni
MudCl t'ilt' such ¿is i': (::f-':Y:5q.(:(j:l!. zb}sr}.\1.Kf: .)L, cr Oneac O-': :file. you shoüh'
enter
INSTAL1 2/A
t.-"; rzin j;'.'\,,-',; !._ u', Absolute lÍiL)¿it .])\S'!.-\!-!?. T1(-ñ\ c2i-i'j¿"i: t"> i:s. QP("úl7[! t).¿!í;-í{ "
f
:t1\¢ il"t.Cjij¿> C}I>[hqiqy: "' E"
):L'";j{j" a <-,:
1O!?
B/P BIOS UT!L1TIFS INSTAL12
System Image fi le to patch (Defau1t=MOVCPM.CCM) :
in Relocatable níocie. or
Absolute System Model (Def au1t=SYSTEM.MDL) :
in Ab': oíute mode.
"you need not enter al! of the int"orrnation; IKSTAL!2 wA) fil! in anv miss int.'
items with the aei'au!t disk. user. or fi lenamcc If you simply hit RETURN.
IX'S"I'.-\L12 searches the current directory for the default System Ima;ze or ASáü-
lute ,'u'sí-eni ,\fc)c]e 1 Í"] It-: (?Y!(.)\'g: S} S.CCN. MOVCPM.COM or SYSTEM.MLÁ) .Here are SCUfí·-'
s¿-ln: l)!t" resnor2bt: s' :
System Image fi le to patch (Defau1t=MCNCPM.COM) :B3:
!3t·jecty M{)u: p'il.("():\l on drive "}j" in use-r atea .ii
System Image fi le to patch (Defaul t=MOVCPM.OCM) :1O:MOVYSYS
tMÑt'Ct:'\l'".}',}".q}'>.{_'()'t¿ c)í_/ the current clrn"e. user 10
System Image file to patch (Defau1t=MOVCPM.CCM) :C: MOV18SYS.OLD
(bc'ic'c'Í>. .'Yl()\..'lBS} j».(,)j..lj t"m d":tu-" "( '.currenr Usct area i
()!"itr !.\Sl": \i !2 Crick IK,: !"ecjL}Ú.st€'{i ble. it \"alidates your ciperat 'n.si' :?y$:eñl
inl¿ty'-' .1ith- ''.'i .}i)€)b c)' !3l()3 pcu"tions, O! the Systeni !Hj[¿?t? '.)j" At'>xu }t-j: f-'
S\>í€'l"x )tfÁÁ'í Etie arc- invalici. ]\'>1".4-]2 prirít.t, an erroi" lnes>a2t' anti qi.Ü (s at
tí"íi". r)("'int .'] tíí:', ñíá\" occur j: an AhscAute Systerü lmaszt- was iocÁed hut jg, j.l ..'\,--
l(")µ \/[¿j- jn\"(: !F.L'("j \5jíi?cyut the Ia xufiiu. ]f' bath níethíjí: t^ cji caiiir.;q iNS"]','.l.G·
fai j.í'ji":-,i erí6uIg that yolj sysr.c'rú inÍaF'3 or gene: rat ion pro,£rc!ll! ir opt' raí in;"
propcr 1\". It \"ot tire sure Üíai you hm"c· aworking Kl"j\'x5\"s. M(-)\.'('E"tj, .M'.'\:/jS}"S.
oj Ah>oj Lítú r\j(: ::it"-i !iIt iíícit A'>j: ú.l2 cannot validatú. you \1'!Ü nee-ú u) cc'":nz?,('l
yuui" {ii^'L!"lbLl[or "i'\ñO vi'! liiníüate act ioñ': to correct rour r.ro»!ert.
I! al líaiut'x in your c)re1"a[]n? sysíex fi le match exreci.ed r)aI"aniete: "s. (
sáñwía: "y cl' those \"¿_iiüv'í i" 'ii": piavec1 It" you specifieci aSvs: téw lniapc i:it
le.;z.. 3t()\"XS\,G.(."()-\: ,). the' cfispim" should be siniiiar to:
Addresses in system image (as seen under DDT) :
OCP :0980H Map @361OH
BIOS: 118OH Map @371OH
BIOS: 1F80H Map @38IX)H
The addresses shown wi liprobably differ f'ron: these, but it" both colunm>.
display values other than OO()0H. INSTAL12 wi Él correcr 1\" overlay the th:rt_ú
system segment port ions of the irl}a?e with specif lea t'i les.
if you specified an Ábsolute Svstení Model, the dispÉaj" \'.'ijj be similar to:
IQ!?
INSTAL12 !3./P BIOS' LjTILlllES
Addresses in system image (as seen under DDT) :
CCP :BCOOH
BIOS: C40OH
BIOS: D20OH
As above. the addresses will prohably differ from those in the c'xample, which
are Íor a54K system.
If no error messag: ?appears. IX'Si: UÁ2 has properly validated your ille. Next ,
a menu of choices appc"ars:
1-Replace CCP
2-Replace COS
3-Replace BIOS
4-Save and Exit
Enter Selection (^C Quits) :__
T(" insta! lanevi" B/P Filos niactc' from your assemhi y. select üpl ion 3. \(1'.} "-": :
1
be askeci u.) enter tní" !lál?1€' cE" the' !"i 1€' as:
Name of BIOS fi le (Defau1t=CBIOS.REL) :_
Thu cicfauit fi!c- t\"f"c' i"- t·:!.': íirÑ the' file MUST 1)c' jT_t \iiC7"()S{3Tt 1·!1 ÍCjí'b,,', '. .
\/\'ÉC'íí :"t terií!!n'",T !ñY í. ¿.f"I .'i 2.' lunurn úi"r-t'rt'c .l"iTÉ""?t th'.-' Tlí'tn"!': ' \"Cüd t-!]t: .':"t-".· t.'
the /.'jt'{al-: jr mí! ÓÚ lc)C¿íT.t'ti. lítu-: ncÉ. chi: >!zt' wi jibe ú\"¿'z ltíat ttCj a"a in'"-í tlit-
aua iiahl ti' :yy-ct iníht.- :rmy' i,i.uf"it'n ',i'hcn adcling ai.i/i' L"ics '. uLiÉ G/Á|i',-
'>\">[ éñ: gent-' '"¿: '- Il iq !")!"L)7: "'ii1,. íhí' li trea;" pc'¡"t 10!! o!' the-' pIQ?ranl j,', i!i1_)(- It-- !o¢-,ü -
eci .Y¢^Ú vii : l I)g Tj("i' :iit-·.; i', i'- i, ¿": hit- :'.M:;":-' sipnÁyini" thú c2t>.2añ: t' Ik t"t"\"ít-.-. t!, :'
tiit' rí:áj' \',.."1 !"l i(?: :,ÁT:.'(j. 7f: ,i'. '; ]l1íj" i:." a cii a.zrio -·,t 'i ctCr" i.¿"Á.ñci \"(jú g. hc'u j:j.'
l)(," ¿j !¿zt"nlg{: d"ii)'- Ill'-" :" :" ,. .' .!"cil íí"\\'. in; tI"!{j' tíw>mígt" ...m"c: "lí^"Úi>' !:'. :"- . . ,
!:"\"S"]"."'.:.]} \\Á rci U""f'i i"7i":.:- líúi :yn'íz. i'oi" tñc' ríe: :'¿ cc)i}i¡}!iir,..j .
i·'.C';3i¿-tc'u'[l: t--:',t cE '. fí: .' !'í-)ijtA¡;¿i"í j;'!("tz(-·: ;y{?: '.,\ tf \,'1 "F.i LF,f or m""i-: :Á.tRí i:
-CÉf- :?. ,
C,i! u"' hit" !"e/"'j[i¿t'-,,...: ." .t:'}..jQ:"'" í'úáL ltC" i"tÑc'cauon g' tht' biz n.ai"· i" l?c: Ly.'·i')i4
'int' NPt'¿'l!.irL! iilt' "-: 'l e: tlm:" Nt am q\'¿7 icz;: tñe oriptr.'ii. o'!" 1t \i'i li j":t. 7:.1:'
j¿"j 'gt' m: lT1')l' i3j"¿')g]"a!": : "\i"i ) l e": :;\.\'i ', ¿:l1 crror !ñéssá,2é to that el it=t;g .
For :':m+ irrnaNaUom emer a2. }(_)ü \'.'1 !1 bo aské"c! t'o: the ríaiíít' oí' aiu sé.
óm'rat iríg' Sy.sí erii f i it: 'CiG :
Name of DOS file (Defau1t=ZS®S.ZRL) :_
lhe default ii ic' typt' at this. point is Zki-, bur operating systems in y1crt),5("'i"i
ELI. format such a": cii.'nribur ion versions of ZRDOb ate also accepted. As
abcn"e. you rnar respond with at'uÉ! or partial file specification arid 1!CMALÉZ
v\'i il t'i II in am" missinz irení» with the default disk. user. or fiienam".
Once the Msk ()pc"raz nyz M"src-ni Íi le is found the toilou'ing prcmpt aDreaI"g:
ZSCOS.ZRL Size OK.. .overlaying B1X)S..
Exami ne/Change ZSLXJS parameters ([Y]/N )? :_
11O
B/P BIOS UTlLITIES !NSTAL12
At this point. lNS'i"Ai,í2 al iQ\i",-.. \r.jjj to chansze the startup sett ings of" al! ZSlX)>
opt ions. .tif' thi": i:-. your innial installation ZSl.ú.S. we recommend that you
p1"e.sa Nfor "I'S' to i'ypams this step, and skip the fol íomnp paragraph.
TÍ' you enter anv character other than Nor n, the default op'tion in bi"áCktúr
([y] for "Yes") is assutríed, and INSTALA displays the current ZSLÜS det'aul iú.
as :
1-PUBlic Files :YES
2-Pub/Path Write Enable :m
3-Read-Only Vector :YES
4-Fast Fixed Disk Log :YES
5-Disk Change Warning :NO
6-Path w/q System Attr :YES
7-ros Search Path :Disabled
8-Wheel Byte Protect :Disabled. .Assumed ON
T-Time Rout ine (Clock) :Disabled
A-Stamp Last Access Time :Disabled
C-Stamp Create Time :Disabled
M-Stamp Modify Time :Disabled
G-Get Date/Time Stamp :Disabled
S-Set Date/Time Stamp :Disabled
Entry to Change ("X" if Finished) :_
'!"!]'gy,c' om i("jn: -} ¿_i;"g preúenz eel i::t'Zfj- bálhé l}1aTínU!" t\j 7.S('():':}- !'--. anti ai"í-' ii-i i1\" ü:·--
,b¿'!"!l)í: (i in !í·Ct !(: '!": j,li: u! the 7"j}! G,.() mana,i .
(jñt'-c" ycn b"."p?: "" 1Á":t' cÜ!2l'i?ul"atic)!! SItZ]? or extr by pie: i:'nn..' X. o:n' u! [I: '.:
ít:j'c)'\'¡l}" :"'""C)!'l")í" ¿íj"'DLú2 t"'") d'~j"'c"nd !"lg! (y] v: ht' tht'"' '" \'q'j aTy" irr-r: ü 'i' ''orí iKt.i"r "J;
í'\Í'j·,N li.:tt' u)'"lE i f'lu:
Name to save new system (Def au1t=MOVZSIX)S.COM) :_
("' :"
Name to save new system (Def aul t=ZSSYS.MDL) :
A>'airí. \"ü'_: ñ:¿"·l'.' !"t-'".l'('nt"l \i'i th ti iui !('l" part iai iile spc'cíl) i-at 1()2 and 1?·.'> !'.\!- !"'
\i]¿j l:iií :'" ¿_¿n:\" !zi9-> iñ2 iH'níx \\'i U) the' ciei'aulí disk: ,user. or ti jenal!it.'. tt¿i
Ílle v\"ittj tit-- tsanít' ñanit· eu..i g"í[!·,. I\SJ"A!-12 prompts you for a neu nanit'. '\Sñí r'
i¥S1"ALUú hár a\_áiici nanic'. it creates your new system file anti eg: itµ.. (iisj'!a\'-
ing orm cjf' the í"O} .lowinµ níessagem
..Savi ng MOVZS1X)S.CCM -relocatable
OÍ"
..Savi ng ZSSYS.MDL -absolute
6.13.Z INSTAL12 Error Messages.
(")ccí1"'. ional !\- !N"<"'l'." i"' nía ." isfúú error messatzes. 3Ío:·.t errou. >: -stíl 1. \'-"1·.·;"; TJh:
f;jt1" ycñii jKl')c'c!t': ecj do not conforní tu j;-:S'i,^'.! lZ' t»: peciar jot,s'.. ()! ['i thc:
SC"jJÁ !CVÉ iIi ': c) ru: ii.\",jj,\.i_tZ aµ'aiti. >pt: c']i\"}n? ¡"L']c)c'?,[¿j!'Lit." !1KYi: - i'] i; en'! Cf :
ahkÍ(")juí¿- trmjt ü1" \"!c't-\ í2'x¿i. '\:an\" 7: \S'1A!-.! .Z errors "ñ'i i : ,z >: tj I"t'>.'Ci ttroí: '
111
INSTAL12 B/P BIOS Ull!_!T1ES
ciamgúd ii les. !i1XSi: \l.L! l£Ü\'ú.4 errors, in boi habsolute anj rc·!o(: -éíE;"i!)}g-
niorié>. tl"V recc]r\"1: 1y thí-- >.ourc'e tj!c froni masters. or re-assemble the s'áj"j1"cc'
proµrani arid exectre !:¿>"i'Al.i2 á,2áin.
If al lof" the abcn"c' fail .your system files may contain informar ion \.\"íúCf',
IXSTAl.ll cannot recogni ze. You rnay be able to attempt an alternate ins: ta!!¿L-
tion with KZCOM or jetLbR for CPR and DOS segments, but you may net-d to can-
tact the experts on Ladera ¿-É\,oíit tar assistance ñ'ith Bios-rUateci rroh!enj'-..
The fotlovc'iniz is asurnníary of" ti!! ::·.:y,T.-u 12 error messages. tht'ir L!!K"aniF'?g.. arr."
some possible rewcci ic" -
*** SORRY! ZSCOS will only run on Z80 type computers!
7s!)')y: ¿'.ñ¢.i it:-, L!tiiit1t'Ñ v\"} j. lcjñj\" or)er¿íl(? c:n t?r(")c€"qg,cIrj, "\'.Í"!í' :.
t?"tc" U' t- [Í"Á /7)ñ ;n";?'"uL{ JOT" <C' 'iu '"'n a'" thi' y>: ü.?\'S'" ';tµ :' .Z!X() or i!:}(',¿!"":
7?)'" ["t" ¿'i rí'"' ti"., 1Í")t" lC{'L)'"i: R if 7'")é m"j'""" '"han to jü7T": :tun í",núr f"jt"" r"j\"".tC-"'
*** Unable to open jfiIename.typ]
i'\"','7' \' l"' car"\]2(" ', !"".caí t' C) '" C'|^'é r' th"" S\"SÍ uñí i:ííe \"uu ":rec '? jt";.
ijr'-l .t·r)q'-:!"L íñá' the ftle is ;_j¿ tho' de!'aují or spec'itied dri\"e/t: g-:el' !c\""¿: -
i: it;-j;j, :i" yin-i inm"í' ',íjt-· "i" tü·d "íM ii !t· corrc-crl;-" »úr thi:-, errcu" pt- ¿g- :'i-- .
c)i") íLri aíj"t."·.t, ¿()r'\" ú; yu-i'" s,yñten' Üie an'i trr actan .
*** Can't find CCP/BEOS/BIOS at standard locations I!!
'!"ht opc"'rat ;ñL" j"Ñ,">t é!'it CcÜziií iñt:íi in \"c\í-i" sysrL'!li ii:'-' '>nm ;; "' [i".; !--
>i¿\í"ci l-j'/d $)^\Gl!. i" ('c"F!_'í¿íj!_l'. ", ('i. !' \Gjic'ñ is not exact 1\" Z Él iobUt> Áj!7jU íz
iii .l. ;.] ,',"!i: ti: l:- t"'i t".\¿¿"; j'y" .' .:.' y.: mfy'i t-:
ü!.jñ :,or I)oi ii .!t!. I! !y[i:'. .-, :.-. t: a, '""-
p€uz1 :>. iirst cnsut"t' íii: ":t .\"1)-'¡" µ\":>íL·iíl Í1 it- has ncn ht't'n d¿in"!ag('.'cl. :íy"u :<i?í
7"C·C': l\_t' thi:'. ltfí ;':j.,.,". .:-'(7r"-¿z¿t ZM: aí'thcu"" ¿iñ L,'u1t-ra 7-)¿t)(iL· ür y":t"' di s.: r!í-)L[-
t'- ':" .
++ Image Vector does not match Calculations ++
t':S>', :-' 'l'\u!!\.f át"í ir]teI";j:\i erccir in úhít-- }LÉíiit; íjÁ '.·,?"!í: '- ñj'-.; ., :
:rí=' a!'{(";'\"('i': bl-t\"]"pL t'í6. li' yen: cíut ñ\_jí v"t: Zñt: /A or[i{)'F \í'Zcn rurír.in.s '}rjt i.."-
1_.!2. vou iria;·" l"'t' tr\"!r1,g l(" r':;"'('27lil ¿i rt: lat l'.'é ininá: lat ton c'") C:
ñ:ll"/!"('i¿:I'- Sil.- .
T1"\" i-u!"!!", ii": "$'¿;'."';'\., itasm ,:": "A'l ti\ ii"te' coníniímci INSTAL12 /A.
*** Cannot find legal Relocation Bit Map
]:Y:,5"j",'í!.}2 \\'íí.-. unable tCj lüc'atí" avalid relocation hit nía: "' r::2t€'rt"!
in the !!['\"{.'i': \!-t}"!'(' t! le \\'he]"! instal ling irí Relocatable nioch-'. :':on-s[ {;n[: i¿. rel
relocataMe imaµtú iii€·.s art.- the penüra! cause for this error. AworkaTc)unc: i>.
ic) gerÍeratL' a:iAr)µo!ate )f(")dej with M'j\'Ci"'3f first .then use INS'1'AL12 in Absolute
l/Al müík on the .Ai7: gt.7}'dte Model tilt-: .
---Can't find Lfi1ename.typ].. reenter (Y/[NJ ):
The replacement t" 1le (c Cl-". B!YJS or BJCE i SrPC'C it' ieci ctínrmí" bu
located .Lnsure that the cirire. user and t'i le nante are corrécl.
*** Error in .REL sizing ffilename.typ]
Err Code :nn
',r' t:'f"]/7' íj(cL!!'T€úi (iurí;]£·- tfít' s::.'"inz or'er¿": tJori o"' l'¿s'i.'\j_] ctn Tf)t
Ki'.í C"\J' zKi. i'i lt-·. '"At-' R! i_. (rzi·:!Eil." t;'t;" .in Mici"osoft re locataMú tormt .
11 c)
ak~
B/P EllOS UT!L.I7!E_S !NST/'\!-12
3'arrjc?d Ccmíri'on seginent sot!íe rthan C"Cl'
_._.FS{"K)S_ .and __íS7OS_ are Rot a! lowed.
and COCK" and data se?rrtt-nís (it" anv) must not o\"gr|ap.
*** file too large to fit...
Tht.: size of' the relocatable CCP or 6LKJS is greater than the avail-
able space in the image file (2('-;g bytes for the CCP, 3584 bytes for the
BDOS ).This error mav result if the relocatable file is not in propcr Micro-
Soft W:i- forríiat. or Aacu': toníized file is used. This error should ñé\"€']"
occu" with the distribution ZS1X)S.ZPL file, which is exactly 358J bytes l3.$kl
long .
*** Error opening :[filename.typ]
I': S'I".·\i-]2 coultl not open the specified re}oc: a[,2i)le fije. F.rí.su:"t--
that you selected a\_a]i(j rj-!- file.
*** Error reading :[filename.typ]
IJ\bi·\l l'Ci\."LL": [C:1 ¿'.p é1':"Cu" wíj'"n rec"í"lr)'" r!'·" '"|JtjC ii tt"'"l r'"lc)!"'/"i1.'"·!ji·
fi:c' ."!"!"j" r{j: coryjn,t tut-" Ítie.
*** Error in .REL file :nn
All erre !V;i'·j Iüzk :1é) ¿2 rc:!Ü¿:ata5'c l?: '"!: iiit: "\','j ';: '·..:s"," ' -'
j¿;;/ 'it-"'.- tííc (fl'. I-j, p:íy c'. '¡4ñ)- ["9'. iu 1")!}' ye :i" t):}í' i".: t:": :-' '-.y- t:-' '- .nn -"- '
,i-. ' i ''.' · '- 'tl'.. ,·'" T"
(,".('cjIi 3,.. "
i:L:',t.\t¿ '- lñtU COCí'j FÜjl'."" ,' .', ;;j·".: "A '"r u', u' tú!. t;:-' \-¿¿.Ñ6" () , , , ,,,
-a·
i- '' " 't'ft"-' "" I\ : t' (,S' 'ql " :L,:.. :.;'A(% Gi
\É)íj .t:,,T I" 1:>: ;:t; ;:\\''·. t:'I:""" 'y_ " ·" "",t ' 1_\t-g" "^u TCj: J:,
--- That file already e.'.,sts. Overwrite it (YÁNJ)?
!Ye
.. f.,L- \¢)1 lj ,: l'ii\:'-'j.·"",! :ZtC? \',' i" ]tJIC.' ¿; j1"cü': ' iy t- "': :'Z "L:
:.:i' \"\, .:
-·'"': ij" ',.·--.-. j'¿': 'j 'i.,' :_' --:'. ¿j-,'¿',¿ tiz·c" r/T"e'\"i(-)t: ". Cup;: ¿":/){¿ lu,".¿:.¿. :,'"l ,il.
?'.ií!l í'í> ñ.G': j. .i.:ít'- :Nl. :-.í' it: c '. ., ;;t-".i rl:"Llll'¿- .
*** No Di rectory Space for [fiiename.typj
]iii' i-- ',i .-:
'2. :1 í-: í¿"'¿|.?rj ciit"c^xtcQ"\" '.rmce :(";j" íi:t- '":i-.7 :'.'. i ¢..-·.. .,,..
,'· ...' j'- :-' i'.'i! {':'. i.71trj .itfit: 'ÁLlLn'.}t t.il[c: ¿d t!; Nl:7"'_ 'l'-1 i" :'\"'j !"y r)'"¿'ü"-") i!""c' t)::-
:j:L"li.i;::L' "i'.iti, ;G c": "1'"t" "·!)·-" !!lzi ,\:Ct"¡A: !L't- i-: ie clixF. in tl"ic outr)t: :- c: tic.'.
*** Error writing file. Try again with another disk (Y/ÍNJ)? :
"! jlj-, T,,C--,.-,;,,L·j u>uúl !\' l"é>jjjtS from alack Qt dw,k siµ,iu: ' cm úi:·
cjj"j\"t- \"u"t: gircú: fi€'(j íüi c')u[r'L]t. Change dis!: ": arid enter Ytcj ii}" a?a]!-\.
113
!QPI!'UT E!/P BIOS t)T!!-1Tl£S'
6.14 IOP!N1T -- tO Package tnitiaiization Utility
!0!"7\"!T iniria!]7e"r an iof' Eí,t: f'f"er defined in thú ]-.!l\"j rorllllc'¡2t Ij)ess!"]!'¿Ui" ¿\") íl'í.
standard Due1m\" !()1-' torrriaí and patchc's ninto the 6u)á jul}ir) Table-. 1'l :-Ú7\"c"·
the sanie basic function así the' older ZCPR-í níethQd of' loadinsz aSYS. jÓF' ti le.
but was added as: astand-alone" .routine Iq do essential 1\," eat ire in3ía!i¿}-
tion of the packa,ze. in so c!oin?, additional space was freed in the B/F' Bioñ
core COde a!!o'ñng other rout ines ro be added 'ñ'hich cannot L)2 T€'nícii."et: t,j
external proµraíus.
6.14.1 Using lOPlNl1"
"lhís j"roµrani >hou )cl ht,- inc l'-ided near the beszinnir'g o!' rhü init iá't S']Ak'í"\"P
SCÜPt for any s..\"stc'!!, ñ_: \i'hjcl? al^ jo!' is defined. NOTE: Thi srout int' /Í/¿.",jg T Ik'
run |)t·t'(j}"(F· am" pí"u 'ran: x í': ln icij change' the Mirra Boot jump at iocaz icjñ t)!
Yo a7g}jR': L'!2i:'} art' exr)ected v: he:i cali ing JOF'I!"IT mth ali value's dc'tennined ÍÍYAi
u"!ú t"':ccut iñf' sy>teni t'.ní" lronnient .The-' rout int" respc)n{ts tcj the' n{jrr!i: icic: i-"hl c-
6i¿agh help ít:Cj\ÁC'.t 'u 'R'IÜ2 a! iyj'd;'!'L")rÍ routines.
6.14.2 iOPlNl"l" Error Messages
--- No lOP Buffer defined in Environment ---
b{"!!t'-!'-: \l"'!:í1a(i{()!":¥". ]ttht: if.ñ--' íiuf jgj" Éía9'. l)e€"l"i cií'l !nE¡"ci¿ jy rL':ij\ \."í "
GLlt in,. ccYjt' j?uI"¿l"L ,0}: u!' a>,se: Í!}j;} .ri'-' |]¿: r!"i! ':.'í ilHl caum'd by t.': "--cu9 in "l.'?'1-'·-' '
--- No Z-System Envi ronment Def ined ---
"i if imníc' C,'¿,:-: .: t-' sl!'j '!.;-'\jj \ "/ ,-/"1' [,i"}í7,",i i" >. e:a cl" a \" :j: : cI J-m" :Í"\V".y I'" '1.u." ""
j. ':"iptm" i" REQUIRED U"! Ti,'!' l'icF c-L,: |i;-.;3L'.! S;: >trtZ:' -!7 i: áit¿" (i' '.- ;-u :.'! i--
\. at- ". t.' ,,> !;"j L- t.,t- .i"\ i". .Lat- ''. .' "" :C:LlCrÁ nc'iT ib\\ ltt"ÁÁ: :íc. !<:"c:i"t iYQj" th::t C:. :t-
u":'¿'(": T\1": i¿t-i.; :t" i:"J{_' ! .:Z ". t:"Lj:'t:ltj:! l- .
*** lOP Already Installed! ***
Sl 'í'—l.: '.;'|¿,ií:",[L"Í:":.". "".C, :'iñ ::c!c')nf- [';t :I:c' M":'.,2 t-Z: .i:"C:-- iíi\. :.: ,.: -' '. :',
1 "l d
B/P EllOS U1"ILIT!F"S LDSYS
6.1" LDSYS -System Image Flie Loader
1.I)$\'b is IÍk' pr"inl7¿r: g" uri iit\" to activare aSystem !rríape fi le preparec., hr
BPF$L"ILJ.' (see ("i. l). It first validates the currently-running systeiu. then
loads the in1a?e fj le, places the component parts where they be!onp in thú
computer's merrtorv, anci executes the 13ios Cold Boot routine of the newly-loadej
system. Ima?e í"i les may be either banked or unbanked and need not be plactui
in the current ly-k'gged directorv. since LDSYS can access files along t!"ie
systeni path, or from Z3-styl-? Path specifications.
6.15.1 Using LDSYS
This utility prouides the only way to install abanked svsíem in aB/P System.
and asimn le war [.c) test non-banked systems before fina! conversion to boot-
.
able syfteIÍls; u") be !oachi'd onto system tracks usinp I\"SI"AL.12. MC)\X8\"S ¿i'"í'-'
}'j 'S\"S(;}.: ':. LI.NYR expc"cts cm ly asingle parameter to be passed on the- Cc)nj[l'l¿írj(¡
l.iííe. thm be im [h¿ naníc of an lma;ze fi le to load. If' nc' Pile ];:pt' l? G'i;--
p; icit !y entered. ¿i type o!' .IMGÍs assumed. The Iocat ion of the c'Ú'si rec! fii¿'
hí,z\" be e>r'|ic'iLiy staUiu.í iri t]cjri]'t¿'ii Z"J-'K3 fashion with either bt :or !)1l: :
p1"ei'i :íes. TM o\'t!1'í': i i g)y{]ra: \: of L.DSJ'S is therefore:
LDSYS [du ;cii r: ]name[ .typ]
\\húu l(");i;.i"i]"!¿·. I'Á'("'1 sl-j|í}n!: ií."'.' y?c'ree}"!s ííi: t· c1i>q'!á"t: d, thú fir": t"u."mí lp: mí, it'·.€"c .
K
cí!'·'; [} -" '«i'cc': ícl 1j"c'7'"' the" ('(^ id F5c)("í rout ír'í' iii the loaded sy"teni at"te' cur, l:",. '
! 'g ::":""¿"):"'?]'c"!"r'ecj í'rorí' LI.'M"S tc} :!'\(" nt"',': }\'— !',)¿i¿l'"L: $)';'j :t"!]í. As¿""Í": rl"' Li'i'Íl")l("'"\" íTOfu cl
b¿"1nF: e" sj: \""'"Leíi| ctui"i'j'" 'ic'\"±i("'l't'.¿;"it \"iíc'ñ ir!"í.l]lE"'c! un aK'fi¿ro"!jf"jí S}{-}b: (' i<'
F
B/P Bios System Loader Vers 1.O 31 Aug 92
Copyright (C) 1991 by H.F.Bower &C.W>Cotri11
CCP starts at :CC80 (OF8OH Bytes)
DOS starts at :DCOO (OFOOH Bytes)
Banked Dos at :1080 (050OH Bytes)
BIOS starts at :EBOO (088OH Bytes)
Banked Bios at :1580 (1269H Bytes)
. . .installing Banked System
SB180 B/P 60.25k Bios Ver 0.6 26 jan 92 (Banked) with:
zcpr3+ Env
ZSDOS Clock
Hard Disk Support
Warm Boot from RAM
RAM Disk (M: )
Full Error Messages
115
LDSYS B/P EllOS UT!L!T!ES
A! i messages in rhc abm_e sample screen throuµh tl_: éline ". ..in.staj íinµ I'á!?}.z: ¿:
Systerii" are printed by LDSYS. Ai !subsequent linus in the above sci"eerí cit: -'
displayed from the nevÑy-joaded i3ios: .Durinp alterat iorí, or moCil ficat ion Üt" a
new system. this subdivision in the display areas niay be aclue' to any diffi-
culties encountered. The position of the cursor at the bottom of the sample
screen is the point at which the new Ellos, now in control, attempts to load
the Startup file defined in the B/P Header. If" none is found-, additional
ini tía! izat ion wi ] l not be performed. and you wi li see only the prompt fen-
D: riv"e A, Use." ().
6.15.2 LDSYS Error Messages
*** No file specified !***
LDSYS 'A'aµ cal k'd \\"i thcmt aspeci fvinµ I"! je [o load. You m;: re'-
inuokc' itdiÍ"c¿'t }\" \\"i tíí thí- 21('!'R "(ii)" c'omníand as:
GO filename
Cfi" c¿-:llit in rhc' norm! Í¿1ghiot] speci tjüm an iriía: ze t'i le to Ioaü.
--- Ambiguous File: fn[.ft]
AI iéíi>t oñ¢' qucu'.t i·-'m ni: ',:"b: io" eípandúcl asterisk !v\ás {."iL".:
t¿'¿":t-·: ir'
thcí spc.t if'icÑi f"i !t· 1\' lüa,i .l\.L'-c'\: c:c'utc: v,'ith an unarnbipuous fi 1€ ñáñlt'.
--- Error OpenÜ"ig: fní.ft]
Thc sy:'c' if"i '-'cl inia?Ú t i le ccw leí nc'ñ hi' lc)L',2tc·(i. (onnííon c:iz::-.s tl" :-
thi>: are ¿¿ Riig}n"\¿'í[cí'! jj"j rnú i'i u: !á?.MÚ. ñ3 ii j..? v:itiá the dt'!'auN- í\"tjc' o! "j\'f: ".'
()1" an inah] l1[\" to t"'iñ: ! i1)\- lL!'"' al(;"l'""' "tlíc L)l'£ f'¿¿¿'; or in ¿j Pl !'i ic C:
i'"t-"" '("""'l'.
11£
é/P BIOS UT!L1T!FS MC)Vy.SYS
6.16 MOVxSYS -3t Track System Utility
This routine i> aprQ?ran] tcj stenerate abootahlc" systení imaµc tor thí l)Oo1
track gof aTioppy o1" Liaíul Disl:. It is custorni ::ccj for each type ot n¿írd\í'a!"E'
system usinp the' Fi/P Ej1c)s. The generic name MOVXSYS translates to aspecific
name reflect ing the' standard name ID, examples of which are:
MOVYSYS YASRÜ"
MOVAMSYS Ampro Litt le Board
MOV1 8SYS MicroMint Sts-lSü
6.16.1 Using MOVxSYS
This prograní is patterned afret" the ori;zinal .\!()'\": 4i"S.(:():: Ji.qtI íht'tc'í! t\itti T.,á:':
hÜ: ita! Re"eal"u'i| '-"'i'/jj JA M'>,tt"ñí-",. but extemiu"c'ly ur¿atc'{: ! to rc'í'!e.: tt"7ít' ;'.
S\>téñi ",rand: íí g} lit iI'. ent l\" of" ab,i'm' ad'irc"'",'" or ",\'"'.t'[l] "i] 't"';' i!) k:l|C'¿"/"\"?¿'"r ¿"L"'4 '
ati'!it ]:.)jNt' cMcL> nL'c: c;e,._l to irllrujrL- !S,/!""' st¿i!]': ia;"::'-,.
'i'\','c\ haí: ic :),(!":zR,íj'tt--!"jj ni t'" ijf-' p: ::·,:-·A 1(, t!í i: pro>'i ,.It: ¿¿'e (li' 2U!itt ti'. cjñ Ukí CC)!!l: !í¿l'_! .
I!: t-. li !;;-l:-·1 f/C '. , , '·-" fíf' b.\'-.1£l: ::-n.zt' in CjtÍK-'t the ecjü1\ a) t-'tít ñ'jE1DzÁ \j ,
ki !ohytt"-" !2 ¿¡|j ¿:c!'-..\"¿"¿ltt:}[ (u',.' ii E.2>.\": ·:tL'|!l. or as the' bi-t"n' a'id !"U: is of ;. i'·.'
l.'or{il: i¿íl_,:? í-'j é)L'(_'q·>C' ". )iú\j\.<'\ !' !'¿"L!"'.ey tlít-' fir: -j t'lenímt u) dete:"minc if' inc' \"¿-jj\jt
i', ¿i !¿-"r,¿'·¿¢.j_'.: íjj\' !:luF,ií','¢- !" c!1ti in;' iii ílzt: l'¿'íif.: r"It'. ancí assunieú: [jj,'¿ii Ü"l'- \"¿.l"t_
s.l'L'ci$'i(-'"\ ¿-; NLíii"'. !!ii-' ¿_tr|.?"jr"L·"" }im'. \'¿1 i .lG adciresAc!$. nm'-t Í)c µ'reaící" tlí:>
;-;i)í.!í)!: tO l!)' urc- t!í.t'. U')(-' u: "s it"k'ñ: pc'rt ion íhú (j}?€'["It'-!l"i,' s,\"stéíí: :ntij'-
(¢íl1kl1i$.)rl :YlÜTI"":"'T:'," á'"¿': '.Ii' tPa: ¢'i!",2uíi: e:'¡! 1snoi ,2 l!L': ¿¿"i.it'c']i!í¿¿! ad'-k »,:'t )"
¿::-.Yull:e.l lg }): j" ¿i nu}l1i_)'_'1- tlj í.i lohyrz'x irí th': :ranµt' N.'jg (..'j. The':':.-' }:'c", ¿fú.
ij,z"j¿j CUi {i ..· >,í ¿¿7Yj ,'"." t'!','í; ¿(g]}: l)Ü'"lL·|lí Clenicun". of' 2k byx-'-· tú:"íZÉ (j'f.)[i"l: 'l¿,¿:"É !
P¡'ckz"-.-.cu' ..'..u i?)"' c-u. ÍJl_ Üb- Ésa>ic- tiisk ()púraí i'í; S·\""'ít: z:. an·l ¿iT leu _\í !.S!-
1_)í"t e' Iü'" t!.u.: -ici/-'ú' !Gíj-? pj!"'- ig:í. $c'\-€'i"á )cÉtEcÉ." at't· perfÜ1'i!jt,'! i".j["t-;,: l
ui',"'í; cj\"'- 7, ;"j t: I)' '1"1! t.It lt""'"'Sí"üE ¢ÍÍ;' pcr"í ícm L.")
t' ttjf 'RÍ()" (('I) li"' íü"X\í }Z{"'"it"' 'P,' "
jn".";¿í i(! ],'j¢_',i ;j.,;,··- ,n!7"' !lí'¿'\"¡"i"e¿'!-})' si: u-'c! ciat: í á]"c-á"'.
7M >--'CÜ!i 'I") ií"á: íu- 'l'j" "ñ"h tí'h ñtí '." j't;' 'rPt cl jíed on the- c()!}l|íj[ir)(: | liñj' i:.an cipt ltjñ?í ]
a". tei" l.-,:-. t"(jt }' i!\ :\,"znlt- ami Trj"< af tt: T" tlie size s!"')c'ci!"¡cation. !t" ,T"i
¿2r8ujÍ¡L. ür :-a l"'f"¢-': -'.:rí¿ .(jTft- ci 1j\.','{j itct 1Qññ \j'j l } Mtaken. i"ti¢j· Aste'ris!. in-true' '-,
the p}"c")µi ¿"t:
t- 1t.' Acatt' tht' systeni iníage to the speci fled .Ñi 7t"-', and simply
.rt.'t,"tití it' ll"i F!L'rl}'.)!"\" upor, c:cittir'.g without saí"ing the image to gis!: .'\t?\" ("i. lit '"
cí]¿iTact€'T"s \'\"i } lsmt't: ify the name cd" afile undt"r which name the iniagc' shnu jj
he' writtc'n u") cUxE:.'It no second argument is given. tht' inia 'c \/\"i :ihe writu: rí
under aÉ'i le r,aríe cif' S\'"SnrL!r.h[,\" where "nn" wi li be the number oí' ki !obyteA in
the' s\".ste!]: S717c' ck': ,cv"i bed ahm"c' rounded dov:to the nearesn even numMr.
Placing >\>.(C7ll j!Í}¿¿µ'L' cm the É$cjcjt Tracks, of adisk is done by LSPSYSGF-N ist\-'
("). t"j ) wh ic'!í my P)'.' clone 1")\" imníeciiatelr fol lou'insz MOVXSi"ü (im"oked with U"!.-
asrerrA argument 'l_:
yFSF'M"SG!'.X usin,ct the "Imape in ltlernorr" seíecticm. cc p';."
syi--: iÍ'yirl: ¿' ?l !ile output i'roní MO\'XSYS, and invoking BPS}"S(-;!: X\.\'.i th the n¿: !;'tf¿ lj
t!)l? rt'"j: íttjiíít i' i!t" .
ii" \"( )" ]"e"cIn"' 2\i"€ "l )"\t· iCf", J'("í '" \"t"jjj r":':" ten' \',' itIi th' K"c),l lmucfí t.in 'TÍ)C
i'.: )\")t µj"µ t- É-'[jI. \"( 'jíÁ ;;,í-;--[ ,ís';L-: 7":j) !E· F,/Í' Iii c)í". In the- ,\cm-!Sa'ñ: eci Mcme by s.et tl'l,S' tt"ftj'
1 i ",7
MO'/XSYS B/P E!OS 'J"i!!.ñ"lC^
Fk\g\Kl.!) éqú,'ítt.' tcj 1\'(.'. anti sc'íi ll"í-7 tht· '\Ío'\"("'y): t'c|úáF€' [("t \'!.5 li": íht." !J'Ll·-: .". .i !
í' ]iC' (set- 4Ai. Thi-' !"é'\ ';-v€'Cí iiiuú mav thcn Macjc!e·! iá'? Ví'\'XS}"9 .t g'·t \i'z if"': : '- -
sin 1' (st-u." t..} i} Ic) rroi-iuctE ?1 íju: .¿t.}ljlj7·E(} }$Qgj' S\"Stf3]í, l-f-] ítu-í i!"ip J'L'..íf" ía: !.)""(. :
needs, .kc'f él" tc' c'h,'t;"'u. r3f"ül" añlcA"€t conip!c'ie cle'.scr;pt ion CU the lnsral !: it icm
process .
6.16.2 MOVXSYS Error" Message3
m'** Start <800OH I!!
:\sUe \"áiüe ce CPR ,¶í¿it_[!rL{? ac!dreAs was specified u'hic'h ü£"iLÜt>
in abase' acidre.sú iÉÚÑ-z tha: ", Ñ)üílE. since' the !cñíer 32k of memory ((). .Tj-j !"li)
rruiy be banked, the CE-R MUST be in the upper halt üf nienmry. l-.: ct'cute the
proµrarñ apair' v\') th an ad :usted gj¡ 'e specifícat ion.
**** Create Error !
':'hí' p1": -"i,:: raiu Cf-"\üi -'.i IJÜT ct"t"it uthí' spt'í: i!led iii ñf: ry üt:'t nui lilt..
!"¿}.-.2"-)l-)lt' L,"\¿}>í> ?2!'t. '.l t"-.: l icIt i"'jclc;i"yF 'csitt' P!"c?t€ícte1: : di,sfettt. g: "baG ñitAi i:
{)r(t :" !"\ '¿ .
**** Write Error. ..Exiting
.-'\t) l-'"!"";" ('{-¿"-!l're(' \',tiiii' \'."tj', :f"} íht-: s¡r'Úcii'ieLl }jil"L¿¿_É\" onpúi Í!á'.
}·'(_)'-,s]l): c- c:áíj'-t- .'- ¿'¿i lanñ-·'íi j¿, u!" ¿jj" l\_c error. Ljl" c? üí.s!: with jnadL"qL: at¿' st J¡"(Áf¿'
mj: ü..c TTi" t!'ü t;jÉ-.
**** Close Error !
'\:'l' t" ' jrocjü i" !\\'i}j :t" ['íEen}l); ir:"icc' :(;""' th' 'r""' "'''"''":'í· '' "\
ot'tpí,t Ult. :líí"' i:"u"z: a! i\" cl.-: t- 1\.' ¿'a n!e']}: -: ()j" cij"s\"¿' ci"rcú".
**** Size must be in 39..63 I!
:\l't','.:B\¿:. \·,,i'i J7}"'.í."5}.-: .'?i '\\itñ u:' 1r\"¿i!.j': is!7t" (riu: i,M'" o: X: smc": :1!...
tk.ui. l'.u: tns-:tt U: -r'r('µl"¿i!; á2.' in \i"!t nan ¿$.¿i iu'nec! :'Ú7ú specif"ií'at íof.
r
**** Bad Syntax. I!
"f'lít- µro;z :aí:í f't ¿::"¿!jtlL c un: u:'.,c'd ítnti cou l{Í :ícn ¡"fq¡"": :" lj: CiCu ifi'. wh,t' .\ .\.'
í',"anUÑ it. v) ijQ. Ét\"2c"n [j'j¿' Mmí-in NÚt? 1)\" etítc'mnc':
L
MOVXSYS //
and i¢j¡]Q',\ tht "ynta'·" ÚMt: C!.
118
B/P EllOS UTIL!T1ES PARK
6.1"7 PARK -Hard Drive Head Park Utility
P.jRk isasimp le 12,/1" '.'t i}11\" rout ine that níores thé-' Hare! ñrivt· !nmcis on a) ]
drires to the des},?na[e(i tandinµ zone {also caí led shippine or park: zone) if
defined for the type of c: ontroller/Drive in your system When all drives- arc'
parked .the uti lit;" executes aHALT instruction which requires', ahardwan-'
reset or pcj\4'er-ot"i'/po'¢.'er-on sequence to overcortit". To avoid the puss,ihí iity ot
Hard r)ri\"e (iarr|a?c by renjc)\"in? power fi"om drives whi le the heads ate p(")sitioned
over data storage port icjñ>. O!' hard drives. F'AF'K .should alwm"s he execut€·L:
pr JUl" tu turn!nµ )"í"'j!" C'(_){!l!".|[Gt7" off. This recorurnendat ion is pm"t icular ly
important fur drive: -. w!"íicZ do not feature automatic hard park.in;z. c)i1" wfj:-rt'
.suc'h h,írd"n'are featurü han'e i"ai led.
6.17.1 Using PARK
";jj !"1 ut li i ty is, g.; híip ly c'?t ilúd \\'í {li ÍJ("j ¿i1"#Ljn"l¿"nt.¶ .íínj >,éqüt": Mial 1\" scan: -" ¿·ii :
thu-'c- PO"rSihlC ñ,-ü_¢i i.'i ;\"tj tlñjTG. exücuting the' SCjSi 'Stop Un it"cc)nuíí¿in(Í Üt:
eac h. \\'íaúr' all tlm-u- wñu, .ij¿;,',¿ bt."on processed, the r1"oce6s("}T disabíet i:iit:"-
ru["Ét'·} anti e:·tÍL'L¡tt::- aí:-'Zjí i:í>,í ruct ion [q precürn tht units fjofít b€"c(7: !lil1? i":-
¿ít-'i' !\"áU-n' 1)\- ',?-Í!7$t2C!Ll5..'l",' i!"): -,tr'j!.:'tiorír. Xc)rl!í:d]]:¥", o:_Üc cyc!iñµ' tit 'Ty)'·\'c :" '
t)rLg;sirl.}' the F,t'Stñ !')'-"!i\..,"_| or t!_ic' comput ei_ \.i"i i!a! !Ü\4" proct'.'o iñ;j i[i ;t'".ú!r. .
>1'\"€· lc)l".'í1í,: 'tlit- hi: tí; l/.',f $-"i;¿.-í'. i:íz !L'\l "!' l): ."fo{"t: u: rrcn; \-cc! c:3Ir.í)'-;: fj· :" (."" t" t,.' ,\."
it'·.'-i;t in !!]L!t',,-,L'j: ; l'1l;i't:,. '"gu'" i!iit"'.i (íj't\"€'".. iin'i sh'"u!'. l")Ec'c): :'""- :"í'Y!É :u: .
..
?'h :") j][1.\ b" [i -" r.-? i .!',' '. .\"'- ::"- |¿"\}í ( ":i>'!'1 \\ i' l'g t.' t{"; ,L(}i"}"; Icu !J'-'; jjí: I:-
It: ;'"\_j'.jí-",.; j1-. i(.- i',- ".- '"ii'. 'i. "ji-t': 'Ü!"! t.j;..jf irií" nc':'"rúí'i !ope raí ic::í.
6.1 7.;' PARS.. Lvy)s M- -- ,.': :
+++ Not B/P Ellos ... aborting +++
.-\.! ilt Zú:'G"'"- ",',¿i hii-Á'l [l) e":ccu t:' i'\l tr uri':":t'r ¿j M')" CAñcl" t'\¿Vi !.',/'1 .
cc rllodí!!'"i?[io!";· 1!ic.' ic tl" (i', t' j"'bi'fj g a :[c' i"t"¿i eht' ioc'"tticur, c]" \"11 !i-" tí' ?- ñt't<.l '.""ci it :'
cÜrrE'cL!'.' i'?;€'!""i[tl: >' !.!a: . ;',\".tíñ..
+++ Can't Park this type of Controller! +++
}'i\P.!k j\'¿j.¶ c.': u:'utt'j with atypt' (ontro!le: o1" üj"irc' In the }$,tr-.
ÜHtl doc-"', not im' jeríient tñc- " Stop Llni t"S(j8l i"unct ion .
**** SCSI Block Length Error !
Thu tl 1()y íioe: ', nc'" s,úppí'rt the F>: tendt·d L'omnían(]gí nc-ces: ",m"y l(": ;';: ".·
rM hc·ati: -, u'"iinú thü "Stop t: '8CS4 Function. i"i"íjs is nio-'ít pj"(Ñ)a!): \- ch-ii 1()
changf-"6 ciurim ar ecii [.,"[tss¢'}":i!_.'l:\" tht: Bios vmich altered euMr tljé (: (")rlif:a:}.:
T)c,Kcrir)tc): ' Fsi"c! Gltí'. t"T Újt' ijm"tí i,':"i\"c' i'unc't ion which returns the raíuü>.
i!T,
SETCLOK 77/!' Eí!O9' LJj'lL!?lij: ,
6.18 SETC'LOK -Rea!-1"ime CKcK Set Utihty
Thi ut i i ity pi"g\" iCiCtG auieans cji' s€'Tt¡n? aFI/P F'icts CIOCÉ tí"\jtii apMsica!
clock contained in the ZSLÜS "j..'_)(: Kb.l)!\'i" iibrary. It presents asiniilar irner-
face to the ZS1)()S luti iity TLsr('].(.)K fj"oRÍ which it was derived.
6.18.1 Using SETCLOK.
SEI'CI.OK is invoked by entering its name with an opt ional ':'Icx:É: Í)J" í\'t?l" XumMr.
For init ial te,qt ing. or tryinsz different clocks (always acian?ef"ous procedur-
e]. simply enter the uti iity naníe a:'n
SETCLOK
You u'i I! be aüked whct7: t:c to cut r: tc icIoc'F g'. ti"oe1 ¿2 }:7'iram". fi ;"rj'j tire u" iru
acustom cIocÉ. a!"!"r',",t'7"' 7CCu IÍ' \"Oú \',í"'í'í tCj u"e acfüc-!'. fi"cA?i the prepare':!·'Ñ".F.
]ir)r¿"tr: ¥". c'ñt€'í" "n'" vd"":tíh 1> the cie!auir síc'ttinµ if" a'-'¿írri,·: 2"í' b"j"iur: í i'. {. '" -·-
[£'j"c'ci .You wi il¿"i isc" nul"lk€"(j f"o1" thc ioc'at icjñ (!..'.!"i\'e/[ "c'!" )ú!' the' c1c·c'É. !' !'.
o:"}ihí"ary. "l"lí !"r'rí")T}}T) í. sL"q.\jÜncfj ñ)"í"t appear a".:
Extract Clock from Library ({Y]/N) :_
Location ot CLOCKS.DAT [BU: ]:_
j'f"i\"t.: I: '. !"t i" l) :;;í;'-.Tí" :t';"tiq iah(7','c' s7iRjI7i c" t."roul:3T "vi'l l]Pl"Q'^': !j::\" ciiüer i:
\"ouí" y"\'s-rL": ?' ;.'. l!., ",ií:.-' '::z.íí"renl drÁ'r ai"ic: ú:'tiú" a|\'-"¿q': g nñc',':n as tM 'ít"f,': !': il)C ,',..-
.
t'u:"j .¿ttbú t': le i'. (")1. t!,c. c2i"i"cñt l\-](")E!u'¿"(l cij"i\"c- á!2c1 PL."!'! ic. :;",'"ji: :i!':
p):-"' t': -j7jt!{7 \'i"i iMu! >;)ú¿ i"'\"ir';-' ,: 'j!")!CI:}l' Í-"": t!" ¿íj"¿"¿.... If íhe CA-tac!: .rz't!L-.-{:-. Ul
lc': 'á:ior, é."!' 't:"it_' ['l-(""tr.ú: .!.).-".! !.!e.Ü :" ¿_7 !t.: '.t'[jtiC)!"l ¿Ácc'es:"}i7)lt- ria t!"n' }-"jj"!L
>a2íl'!"l', "Árt',".iy tg)ÍÚ!' a'","" :¿"..ti" l'C' I' '.: rr' .othUr"}',"1jt entcr th:.' !(.'c;"?jl{")]í c)'
C!_Cí .'ás .:'.-'·. :.1'() j(i'A'¢',"i 1\ .,, Cc) 1.')1, árÁ It car"iazc re turn .:1 .lis: c·; ore' !" 4 "
a\"al]¿ibjc' :IücÉ", i',"j i! e!)¿")t-'cL¡'. "1"(. "cüí'cr ("flt-' of" these clock c1!u\"u!"s. c'!2ié!_ tjÍ'¿-
n!Á;: l|)L"j (j'("): "T"€"A]'t)")(": in,.' 'L oUit' C>cK. .mA tht-: proprat, v\ :í!do the !"€'gí .'\&j ,cm"
lIjL'"Ñ¿i2f.:> \A.j 'j j:·-' ·ti:-·j'; ·i"\'t-j c-)'. 'h'-' "!OcÉ: Ct1l\"t't" IS ioacied. lznAtui Áñti t:'"í:L'C[l{:-":l.
!l' ¿¿ lignc:>, 'ñt' il.tí:-- !,!x" !il??-'g}g}¿Áµc Yi i}!bti- tiít· lmíe anci Tinie rcaci 2i"orr thti
clo)-. tí\i ]{)'.'.t?("! 1")\ t!"jí'>: >¿"L;:¿' tÍIÁF 'the" í",,,/i' isin"- t"i.o:k was Set Ok.
.Al türnat i\"új y. aclock dri \"c'¡" [}j¿;\' be se fecteci for automat ic exccuí- lot) acccmci--
inp' to aspeci!"ícat ion on the coníniand line. To use this mde. the ("!-f)í K'\.Í).· i'
f"i le must eithci" I)ü in the curi"ent!y-iogged I"'rive and User, or on the cúTT"c-ñt
drive with thí- PÜl'.lic Attribute bit- set. the syn'ív: for this merhoc: c\t" sot--
tiñfz the !S,/i' ,"iuS clock is:
SETCLOK nn
where "nn" is anuníher c()rr€'spQn(iinz to onc· o! tht' clock> in tñú ('¡-()'.-'F.g..I).-'Y:
t' j!c' .'! hi ". niethoci of Q'9l"át ion rúay be usíect tQ set the bicis clock wi thin an
alias sc: "íp2 such as 9! A!Qj)'i i', ('{))¿ ccminion ]yused vt'ht'n {he C(")!]"l!"-!t fil ri:'t": !"S·.T
l)c)(")tt'\i
12íj
E/P EllOS UT!L1T!!-"" SEJ"CLOK
6.18.2 SETCLOK Error Messages
S.jñÑj' oí" thc t'rrorx in the $í,'lt iÁíh útil-tu" are fzéñemteci by the' to!)-iL'\"L:j
pro?rarli. 'fjhtst: crroí> íonsi su Cit :
+++ This is only for Z80 type computers!!!
This rout irte wil ionly operate with Z80 or conípat ible process('/!"g.
since it is aB/F' F:ios ütiiit\" which is also restricted to these types.
-- Error in locating Clock fi1e
This routine could not find the CLOC.kS.bAT Librarj'. Insure tnn:
the library either exists in the current Ly-íogFíed directory. can be found x"í:
the PL"Lílic feature. or is a'."ai!abie along the LXjS Path.
()t ht.': C'Í"i"c!!"'4 arc' generated in the' process of" extract 11"!2 and \"a!j[i.ñ{ inµ' tnc-
dr ¡\"c: ":-j-·] t'c'ted it()ií tht- c! C'CKS .!i.\'i lihrarr. Such eI'"r(jr: ·: conñ·,t :."'] :
-- Error Opening :clockname
T!it" g.L'lí.'ct(: "L_l (_'l(_)L: 'k dr'n"t"r in 'the ).i!?l"ar\" ctv'j: !;7._'.1- !"'l- c"';"'t:íc·:.
"iyj- !" nt'."-t Oftz't. íittt' U: c()r"]"L.ll't](Íí: C1Í" thú' C!()'""KS.ñ'\"! t'i!C-. !"Qt' :'.1 .-: !"í it íi"íjTi.
"' T'i I tí
: (v.: !" :tjj iyí.}r|";¢¿{.,'R.t )j7 /"i LC,:l- ¿t fíC tT \ (t;- it i.
-- Error Reading :fn.ft
.a.:]t. "" t" ,."''("} "'}.,"r T" .,:i:i'j': .l:. 1Y"CJl, in': t",' ('!(.}tR/,'( u;";" 1l C):," ii"i ," ,, . ·,:i 1 ,
"' 7i',: ',.'- 1",'.) :¿.;".í.;j ci"j: - jt.": ü'": f_i"j""Lli}:-]c)l' ut' t!it· (!()Lf-: µ.'f),·".l f'Át.
-- Erro:"in :clockname
''i '" '" 1 " '" cr-c: l'l t"i ir; tt;" ')" lC'tl '"C Á"ji;i" ¿,jl'l -j Ct- "" t1'"; ' 'I'":"'
TI
>¿'l{¿': 2¿.i (.-'i(.),-ü (i '" !', c : .
-- Error init1a1izin9 DAT file
:\j ''.' :' r' ': '.'.," -, "n ",",'}T]t :";üju }I, 'Flí Ii, t'";¡j'"' iPit" í'iui !- >.b"' 'l jÚl¡ ': \".
-- Memory overflow in DAT file
:\.. R!t 1híIC\" a! Ioj7ü- ic.u cdr: "¿'r ocLurzec: lh Che cQ¿'j.. r(:í:.|í trc' i': Mc'.
c'áú',¿·;: :ñc a' j{'¿í: [€-".i :7j-'llic)f"\" to 1):¿FL'ee(!L'["i. Tñi g, shot: !:"i nm occ-'u rin c·iñ;" 0^
tííg }i?):'F{'"\ :Icá',- Ci" !\"ú :>.M-ii. nía;: bt' exr)e: "i¿'nce(l itUc" >"2 mic'l ji7': au.' ñt :f
ÉC)!!c")'\',£'(: } M"m"i cic·i"el[?l'][!' ¿; c-u>t[)Él! clock: .
Still oíhtu" c1"!"Ür.> ]"'_" jai etCj Üíl' reí'. Éinzz and lirú: inµ oí" rhe sE"}ec[Úc! c'lú_i_
rou t. tríe' \i"tjc'tí]z"j" itiA ti"oñ': tite c.'iock Lim:ary. c)i" loaded as aStaIlcialorl€' drí'. -
t'1" .I!'hí'se t'rrclrj. ir]c!}j{"i(-':
+++ Can't find :CLCCKS.DAT
SP"!"J1_,(.'R couici not iinci the rt-ierenced clac!: fi le. This errcr" ','. !!
be seeri it' ar atteuípt i> niíúlc to use astandalone cic"ck driver \'\'}7ic'li couici nc't
M found in r.hc currt--nt i.'ri'\'L-/L'gj¿'r, via the PLlilic atzrÍbme. or ¿jjoñ£! the }.}."·,
Put It.
+++ Error on file open
j\;j L', ¿cj;" o'-(-',!r]"Li \'.'ñi if-: t'"}"] n ? Zc' C-:
,'íjt ::k,ia!j'.: ::!Fj:}L' i; Í('f'¿ ?. fj;í..
lñ.m."t· thí: "iii' E" ,jt\'1¿f' (-'i.) r:"ú'- 1. !\" a", -,z: n"L!?·!¿c! ai'i :t,"y a¿;a ]:". .
1?1
SETC!-OK B/P BIOS l!T!f..!TIE3
+++ Error sizing :fn.ft
The se lecíed clc'cp- Iilei contained t?rron€"c)ujj or 1n'\",-!¡c: y, :/;rjF-:
inf'orriíat ion. It" this is repoi"tt":!Íroní the CLOCKS.LA'I file', reloi"Á tíítÍ file
from your ZS1X)S backup disk and try aµain. If it is reported while ioadirµ a
standalone clock. itis l7lOSt often due' to incorrect spec ificat ions of' the'
(-'SFC3/D.SM;/N"amed Corrinion areaÑ within the clock template. insure tht:tthe' clock
specifications wert' tOl lüw'eci. reassemble the driver and try again.
+++ Link Error :nn in file :fn.ft
An error occurred whi le !ink ing the re ic'catable code f'r(7lí\ ii clock
driver. Thu "nn" reported is an indicatcm" to the exact nature of" the error.
Consul tthe authors if you cannot resolve the error.
The final 1\.\1-) e: "rcw"s are ir)ciícatoi"j} that erro1"'¿ c)ccUI"rt'(j after che' c'loc'S
cir l\"t'1" lías been loaci'nl. 'ink{..(': .and \'¿Qi idated. If" either cU t!Í¿"y-!_ ("úcc'í!_" .:1.
is n|c)",i. Qj :e'í clut.' tCj gn-'j€"j[ 1(ji"' oS" an incorrect CIC'CR círivc'r, probienis "n"iíí"i [ijf.,
harchi'a: econt rol iÍñ2 tñf' sc!t'cít"d cX"\ct\. ()jj aictn"ai itYí: -, ft) Íiít k,.'i' !üí": u {'C)C,'.-
which a!tm"et! tht' spt: 'í"'it led inít"·rí ¿íc'é.
-- Clock Not Ticking --
The >tÑe"útúi clmr: í.!rí\."t'!" c{"'ul{j rm cle'ü-"c1- cu": ¿"iCt1\"t' i-;'-)-: -"l i
i'-, ñí'.j"it (ji't¿"!"? Éií: -' rt-'súit of' sÁ."'t'(-tirl2 th·:-iricoi"rc"ct dí"i\"£'!". ("u" Mj-'7- ;jt";.j ig, " :'-
u,'.g't. \_¿ñut"' 'Á"í'-'ñ ask-c'd l'o: "'m"úz if ic acld'"egjÁ'-': -> i.\i" "."'2j'Í'_·: Z i','2'j: ;x :t"..t I': ft-..;.
-- Error Setting B/P Bios Clock I!
"itíc !ñcr· i"Ll"".':":¿':: :"'í' e::"í".'" :',"!'tÁ ;i"1j€'l: :níi!z. i'j y.'- ic'a ."' "!'. ' -
':'- , f
C' it ", t, .Ti i '", ,"t?':
:'":'a! z:u—m. "'-',í :!} t_ !' r[2 :", \J!c> lw": fyinz t l?t-" tf">: :.L'., '- i- '. . .
12?
B/P EllOS UT1L!TÍES S'HOW!-li)
6.19 SHC)WH1J -partition Display Utility
SHL'WHñ is autiiity which is furnished with rhú h/'p }-.ios packa7e a', tin md in
convertiñfz ex ist irisz systems to h/P bios without !osinµ data. particular -ly t"'!)
Hard brives. It is not spe': if ic to B/P Fnos and should prope·rly execute on
any CP/M 2. 2-compat ib! esy.st éj2. Its purpose is to display the current Hard
Mive Partition settinps so that vou may conf igure aB/P Filos írí tnñei" NtQÍ.!"U?
code. or in1a?e form lwi t!í !SPí'.\'FG) to ret'lecr the same part itioning data.
6.19.1 Using SHOWHb
1'hi> rout iñ€' i\j abaAic ut ilitr which is normally infrequently. so t'ri íí"j V\ZÑ"f
not aridecí. It expects ar?u!|lents and only operates in an interact j\'¿' híQcÁ .
"icj eu: úcuu-" it. Fili¡!"!y enter:
SHOWHD
You \',i i!M[)r(3n}!)[e(! t("} €'ñtei" acir"j\"é kÑtém Mít'n c'nit"rt-."i. ;."üu _" :ii 1,¢.
preget}íe{] mi!. i: C:
j",p! sty lí"tin.z '-he' iQszica jpá: "awt'tc.i's. ft';" ttt' cji": "'.."t'. ."
sanip!e CjÍ ti ':'":'u: lgí'j :b:
l
Show Hard Drive Partition Data -2Nov 91 I
Enter Drive Letter [A. .P] :Cj
q
Drive: C
)
b
DPH Info BPCNFG Info l
l
i
Sectors/Track ·64 (same)
Blk Shift Fctr =54k/81ock
Block Mask =31
Extent Mask =1
Disk Blocks-l =4999 200OOk Total (2500 Tracks)
Max Di rs -1=1023 1024 Dir Entries
A11OC bytes =FFH, OOH
Check Si ze =O
Track Offset =3500 (same)
6.19.2 SHOWHD Error Message
Only one ntessaµe may be displayed frorri the util ity. It is:
+++ Invalid Drive :d
"fríe- b: _n"t Lc-ttu- :
',e!cctt±d vcax Rot avalid drirc' uuhiri tti/-' Fiiü .
123
SPINUP El/P BIOS UilLiTIES
6.20 SPINUP -Hard Disk Motor Control Utility
SP1X1"P is aµenú,"ic 13/P útil ity to directly control the heads and motcrs ot
newer SCSI ci."i\"é.s. It moves the heads on the specified hard drire unií to Ue
desiµnated shipping or park zone and rnay turn the drive motor off if called tCi
Stop the unit and that feature exists in the drive. If called io Start the
unit ,the drive rriotor is turned on (if" appl icable) for tbe speci fled drive
unit arid thc heads are positioned to Cylinder O. This routine mat be used á'-f
apower conservat ion feature where opei"at ion can be continued for periodu, of
tirííc' from RAY or F'lopp'c' drives without need ic) accem: the hard drive un it.
Attempts to access a unit which has been "spun down" with SP!NUP will result
in an error. This routine iq essentially agener" cversion of PAkk (seu 6. I")
and is t'urnN-hscl in squ!"c: ú cocie forní to denmnstrate methods of interf"acin? te'
Hard Drives fj-OllÍ Apj'} ii'at ion Progr¿ttÍls.
6.2CL1 Using SP!NUP
7"!"'ii> utCiiy \',·::r ','.'tltÁC/ f"o!" tí'-t;" r'.ri[lÉ,"'Lr] }\" in b.: ítEUrµ"-opc"r:"í¿Ud syú.[c-ll| .í': !í·-':"t'
l7C)ii'L'1" í: cuis·.e 7"\"a {iCYí ':·': dc: ".i ]í-¢i. íbeneral i\", on 1\" t!ic ñé\í"t rSt'Si dr i\"c': re "mcnij
[t": the Stor,/st: ít-t l. li: '. coníujan(i: ', |j\' cont :cl !ing Éizt' dr i':niot ?_/í" -- í,n: ! pc) .; :]:v
i!",:"tíÉc' r: eaü". O'\"g; E!":C (iCí\!,Z: 'l¿iZC': i-.?¿a(!l:},2 LCñ?z. .$!-'Í \1 !' !:", (.'C);}lRl¿i: É(1--! ::'"i.-
cl :'i\"F'r) an fi eu 1)l-' í'-y a'. (t;"guIj"!t t'; C(: j":?"2 !'ti inií Ci ,f ¿"i "\i:itl i.- nit.\"uI;"l!")(' ríuí :jL.
phy: c:Á !ixr'? 1'¡'J\"l' :,':"1 {'.('t S.: '.:. cmi !G+tj;. \"cilid '"nit \unI}-;'cr3 ¿j["\- '[' .
"!' :uicl "."" .
'·''''" '" '"' "' L'L" i:u' '\U'ítM {^iti1 u!CÜ'\ · - "'
,-¥'r- "_:tj .F:EÉ{ )" ' " · i
c"i': :
SPINUP -O
',',f; i gí 'E','i!IC(lÍ.) "- '.' tli ,[l.'l t: (-'l p: nÉ". t nú ll¿'¿"ic!y. c:rij .éfi..Y\ ':' p¿")',gfj t" t' F(j!!: ":,:.' :;,'
iwj' u' ii' l'": )3"'í:,',,. >,i.,: "íi:ic tp}í- ',;'"'1 i' i:"i'.|}:-¿:Lc'Ej 111\" 'ziii.l?l\" !?¿Á--)'.jF},: :n, i'·'·
ylA,!)ú" l ¿j--. ctl"l ¿1i"2: 'j!':i.'r'}[ i-'- :
SPINUP O
\U;¿"íhL'j" >tiírí It!:' ljj' $|c)1'/Dir!' t. lit r:l É'i"i\"é Lnit. 8F'7Hi1-' ríioriiío.r',, thr urí: '
., .
statu: -Ñ'tt'j" ]s': "-ul!U í!",ti- c'c}l1lQ: ¿¿rlL¡ anc ret'orts t!ít' status cíf' the drive whei"í
results oí' the Q!)t'rítt 1()!""1 ¿ílt' rtigcel\"el-!. kesults are returned as: the unit ig..
Stc'!-'{'€d, Stat tetl. o: "ar crror has occarred lsee (). 20. 2below) .
PÁOl" 'lo uiÁng SF'IN'Í' u) stop ahard cí: t"i\'tü you W-ISl insure that acces>e>, ÍCj
anr lo?ical driut.' un that unit wili riot qccui while the unit is stopped by
either exchangi[l,2 l[)>'i¿a} drives with 13PS\GAP (see 6.f') or aiterinp the Loñirnand
yl"(")ces.so}" au: i OQ>"í Seam'h Paths uith the ZSDOS Ctility ZPA"i!!. For exarnj"Üc. j;
your system includes apart ition on the subject Hard Di"1\7c ax 1)1" ire ií: .you
hme io#µt'd ontü aFµ\\! l""trire as M: ami the unit is stopped. ZCPR'l an"j 7SbO>
mat' atterript to f'inu Silt: Olí dri"ot A: i\"nic'j) j','j]] remiit in aRead l-rro: ". in
this ttxarh;"))t'. ynü niiíy c'; tht-"r 'u'.,jµ cft"i\"c .·'.: \i"i[r) Id: .insu"inµ, íhaí M: is not in
ClÜ'K't" íjtÁiÁ (jj" m-'; !'![")i 1| [': ¿Zl)j Í-Í-I tuc'lude clru'e A:
124
t3/p BIOS UT1L!T!ES S?!1Q!)P
6.20.2 SPINUP Error Messages
+++ Not B/P Bios ... aborting +++
An attempt was made to execute SPUYUP under aRios otht'r thn:íti/l"',
or modi fications made to the Bios altered the locations or values needed [c-'
correctly idem ify the system
+++ Can't handle this Controller Type! +++
The Controller Type within the Bios cannot handle the '"Stop/Mti ":
Uní t"SCS !Corrtniancix .
**** SCSI Block Length Error !
The Bios does not support the l'.j:tendeL: Commands necesí,an" Zfj t'-::':"i
the drive on and off' u":inµ the" 'Stop L"riit" and "Start Unit "SCM !'unc't icjñu.
1'his is rnosl probnMy d'.tt-' 1("\ chanµ.cu during an ec!i[/aNseni!): \" of th: tifj'-¿ Üiich
&ití'í"ctíl ei tl't- i" t!Xi' (""C)ili[É"i:¿!,..i hú"ci"i purr f$lück sj.Ql" the' Ei,tírd l.'í""i \"c' !"unct lot",
which I"L'íurn: -] t!"r" \ú'iittt-.'>,
**** Invalid Unit #!
"!"!ít y"'z-': ii 'l é-·{ '.!12! ir}U!Ilbc'l" \\,'ái: not "'()" ,'}"(g "-"" .túl' i' ·." Z ".í"fj·
!Y)\-S icai Híc"ci !.U','. t- U!l;['> 1-1}"€ recogmzeci in !!,/1-·' íñt.: '_,.
1 2,'J
TDD B/P FlltjS U"T!L17!ES
6.21 TDD -SmartWatch Support Utility
TI?7' is acus'tom]?eL"! \'erbiorl ot" the ZSljÚjí utility Ti-'. v: ith ZSboSZ sy: 3teÉ!l',. ,i
used to displm'. set or upd: ne the b/'P l3ios clock. This latter capab: i[\"
only exists \i'itií the L)ai las SmartWatch (bS-12i6L) or JDR 3'Q-sjot-clc)c'E: in üjé
Arrípro Little Board. Sli!SXj or YASBLC.
6.21.1 Using TDD.
'i"lji) obtain> the system 'lime and bate with aLXJS Function 99 and displayú the
informtion on your console. Your systerri Mum have an instMjeci clock driver
to use this utility. If the clock driver supports aset function, T!")l.) car: !'[-'.
the Date and Time usin? DOS t'unct ion 99. When settinp the clock. Tb!.' will
allow you to ope: ratt' in either an Interact ive or (:L)[hA'}a!]c} i..int' driven ñiQ'ñf.
'!'Tí!.. responcis 'U.) thí' s[:ln'."!¿ír[i F!t: lj" ?LcjUé".'- cit'scI"ib€·{"1 ir, Sect 10!! l.". You iíía :'.
obtain ahr icf" LlSá,!Zt" duscr ij'í te'::. by enter ing:
TDD //
jo'.: niay ot:'t ajr. :1.(-' c'\.É: "'"::'í!! !'t: rm.í "!"ínít-" from t líe S:\"S7lt"til c!oN. !"·y :3 lhi]"'i '.
cn:e': A,' tiic !7!"c': -:1 an, n,íi'"c' tis:
TDD
;t\","m r'j 1' j"", ' ')2 ¿l 7'(, j l "} -''!(0 !)a" c'cloch" ,j13u crz: iq e ', [ii' jj ,"\ '!'í"c : '"." é
chi"cirly jz.\" {-'rÍtL"i";Il,':
tdd l'
.'\ cc"nt inuc't: "í: i>,May ñit_:\" ht· ()§"gr¿li!}L"i-l \iñj CIJ r:íl ! t'pcl,í"t r. ú"\"éí '." 5t"¿: ()!"Í¿! u'n }.,'Z:"l\"
Áj\" is a¿'pIL'>.gL'/: lhy cT]teri: 2?:
TDD c
T'ñt' h\"Sí él1"i C iO'- knimy í"/t' s+ 'i in t!"it: 'Lnzer¿ícÍ l\"t níocic' 1'\" e1)LEjr};1;? íli..' ;': '.,-r'..,.
nanic- Ioi !(")1\'c': :tht' "S' i')(ll"¿LnlL"1 e [" ,i:':
tdd s
You u'i!l then be askeci to er,tc'r the date. The prompt \u ll ("!isÍr}!a!-" tht: ÍoTñü,1
in which the date v\"i ll be' accepted (L Sor I"-urope¿;n) au. either:
Enter today's date (MM/DD/YY): -[-\í
or Enter today's date (DD.MM.YY): -f"urcmeai-,
i)ate f"iéií!'· {niünth. day. and reí:rl rnaí" ht-· either one or ['.'jo cíizns in é:ic!:
pc'sitiom ]Q\"¿: tu! eníl"i€'q :-,uc!í ai., an lñ\"áÁ iii ckiy !'cu the cntcrt'ü: LñoñÜ2 vA :!
Cáú'jj" 'thc rj": )r!¿,.É' tu j":'.. t"t--.: 1:"l'i¿i.\L·¢l ::.j; :iT}tú-\ eT!íI": Y.
'jjj"¡¿'j' ¿': \",1í iii {l{i{[- ha'-, :m--:i t'ntL': ec: .y%.")U \i'i !lbe pl"c)[r!rte(j foi"' thí. cui"rc"m 7- ,rnt.
126
8/!' EllOS UT!!-1TltS "I Ljij'
Thz" p:"oííípt v: i!i\"ai"y ciepenc6: iµ" on \\"hetnei" you a:u:·jnµ ci Rea! Tinic' CAr-? .c:'
tñt" Reiat ivt: counter Sú>L5t ítuít- í"Cjf a(- lock. The t\\'o prümj"'t :> ¿j;"g;
Enter the time (HH: MM:SS): -Real Time úluck:
Enter the relative time (+XXXX): -Kt'laíive íóuntúr
Tirüt' is. assumed ttj he in 2'í hour format when aPeal Tinie Clock is beinµ usect
Seconds Tli&\" bt.· orúi tteí! "n"hen set tin,z the clock. When the relat i\'é cioc'k i",
used. a"+' rnusí pref ir tt\c^ count to which you wish tg set the relative Cc)uq-
tc' r.Count: -, ft"oh: +() to +'j9'·)'·) are T)er!]i!Ttel: l.
VJKtñ tlíc tiníc É'izt ry is erí'it'd with acarriagc' return, the date and tirtíe "ñ! !:
noi I)l' au[L)[Ílaí ícal íy set .Aníessape v\'i ]} prortipt you to press an'i" key. ,'u
ti :rpcMñt .the next kc'y depress ion (other thao shift and ccnt rol l\4 ills.t: t
ÍÍF' C!OC'k .TÍj i:-} procU(íu]"t.' ai 10\'\"5 you to accurate' ly synchrúni 7': the timc" \'. itn
oric ths mny ¿;tj j'.j !"L1É c" tiní'. sou 7"c€' >.
{"c)li"l: lla"]¿í 'Wíf- Y"ttUI'" ui ti\í_ clüc'É: j"' init iatecí 1")\" enícrinµ tb'" prü'"rmi ñáij'
Écji :
O".'cj by tho' c1,-ttü :',nci cj;ñ !c7xÜ t1ñíÚ. The date níu: it be in thc: CQIIécL f)'!"l!:
ii";-, (}/" í.L}rc)!"'L'¿i!],' tui t}"¡'; gíjñi i'nírtíci "!'hlm It" ari error is Cí'"túCtt: i! i:"i ¿j (, ¿.)j!jn}('n'"j
,
l7m- c'í'u: É ú::t. "i";"'t.' 'í";ú: íÉ'.-- 1() !,'k' iñít"í'ac't j\"C m'ociú' an': í:-)]"oQ¡l)t> f"-;ú'" Cúitt' a:Ñ
Ti:ii:'¿'¡.:.Lje<-,
t;' }' !l)t,' .'¿¿:j.")", rj .
4&.2 Configuring "i íj-
,
7': ,_.:
u' '). ,.iu'; ;,"..;¿-'.j :
-' l' L-f-'g[ I P!-. ,'1)!( in tlÜk'F the L"ú to:"rmn cd ñK"x!í j"..
ciÁ '. .Lt- :Cl -:Sep IS, 19&S'. or the í'ui'opean and 1111 Ñt7j"\" :':tyh: ei' :1,5' Sep
ICLS'S- ::k.:-.·.i:'}L. iííí ;';í z¿].}nct]c)rí ¿_íCC'-'i3t" z1""] fcw"nía¿ Qt :,::\!,/!!:l,/'\'\ ¿;j" "'::.
]
i"u rc"'óc: tm i'f',V',', \ \' 'i" :l'" ", ''"i'7 n ."L" be S C :"n' 'T'l\1I iá'Y'j 't'\" T'l '", m' ii 7i'\
u>.:ná' t!¿Üá coi: ít.:n'_" if'! i"ii-' 71A: ñf:
lt on tñí- t"!lYtrih[: Lic"):] t!i>k.
4.íí-.f, Tb Error Message-t.
7
F;"y-': "lift- --á,'ijt" t'.": '" 'l {.} ,: í'-,in,ij"' le" ¿ijkí art' l?íO: -',t ty SC' ii -eTrla!]¿ii(";|"\". i-c :" i. :'.! !-
"1
2\,n{,)\'\: ¢ '. 'm l ,tUn- icíl t',.()\ t.' ['lj'.l !lt-" !c' .
SORRY! ZS1X)S or ZDújS is requi red to run this program!
You tríeci run this v.'ith someone e1sc's Dos. L'sc' tíbL'c'> !'f
zi)lx)g .'l'!'íí gt'i": "or abort ;-j to tlui (jc)rÍ}n1aI]d l"rocesscm
*** NO Clock Driver installed!!!
\"(ju tí'it'ci u) retn-i aclock which doe: -: not exist. lns.taC ¿, ';"!Otn.
\'.'itt S!"R-"í'/S'l and trr again. 7ñi>. error aborts to the Command F'rLjcegkgj.")1".
*** Clock does NOT Support SET!!!
'I'hc cl(_)c4 dí"iret" on u")ut ccmiputer t\'i } } ñQt permit \"03 [(_1 s¿« ti:':-
tiF!!fE i'itE 7"i".'. Tli: '- L'í_í"í""'i ¿ii){."")l" t:"v to the Comniancl Processor.
1t) 7
t~·t
TDD B/P EllOS UTI!-!T!F9
*** Must have B/P Bios to use!!!
This utñitr" only t'unct ion: -- under Fji'P 15tcr'.. It j"cA-! are ug·'!')?? H/'í'
Biers and thi s message appears, it is most probatAv due to edit/reassenibú" of
the Bios source which altered c'rit ical values in the data structures.
*** Hardware Type Not Supported !***
Since TÍ)D is integrally tied to specifüicj hardware platforms. it
will only function if the running conir'ácer is one of the types for which th':
correct code has been in';4enienttd. This error should not appear un1ess the
..
"L"' or "S" corñman -1> jssúÚci.
++ Insufficient Memory! ++
The base of' ara ilaS le memory has been reduced be !0\'." that needed
for the portion of 'roo which is relocated to high memory. The mos tcommon
cause' of" this is the aát"!it ic'n of' Kt-c' icknt S\"stéjñ Lxtensions (KS?Á) whi': -:h CaL"¿.:-.r.'
1Í"m top m" t!_it' "!"1'.1 1(.^ TE'!'{?}"É£: .:i ¿p: bc'lcm" $Ü()(lF!.
*** Error in Data Input
.-\;¡ iñ\',ií .lC) ch¿zTacTt."T or nun:lj€"i' í\"á: '4 entt'reL.; ',i"hen tiu'im' ii"" :>C :t!Iz
/"iátt-' ¿'.ñci t:tnje. This c'rror Vfiií cáíj9A' tht' Interactiu." l)!'")clc' to be t'!7tLIt.'L"l Czfi"i
1>á',u€· anrc!íÍD[ tíj re-e'ní'"'" l¿"·"Tl-U'. ("!¿"it€-/rí[!!: -:.
*** Must be wheel to set clock!
An ,zl lC1bL?t \'./í', m': l. ¿i S.t'! tFiu :::\_)¿.'k '-ii: :2'-)Li2 '.'.!iíí !;¿ ..- ':'
7Sl':)í:'i{:-' ti,";'C: :- i,' c)}" 7.j": . "i" -{,'"y,: .)í.jS2' [(7 i,ct :z "\',á) it! '\'·ñt"g'] i"'yt '-' .c" "" i"! '. "} -. ", ''.' .
t
{g.¿'t: (3·.:''Í(\ ! /n!" (.,, io:" 'L hr l' >, aIf :rlí¿1: ]'L3'"} }'; Cj r-' >"'\.''. T.l ,lfi ..- t" i.:-' '."
to t"iC (Qn}}!lar""} }',c)>-°>c';.
*** Must have ZIBO Processor!!!
*** Must have ZIBO to Set No-Slot-Clock!!!
**** Can't find No-S7ot-C'iock!
121-
E!/Y ClOt' lj1"!Ll7!Lü ZSC!-G?
6.2? ZSCFC'.Z -ZSDOS,: ' Contígu ration Utility
1St i-ti-? i s arro,: í"('.l';l úQ"i Cfjñf iyurc' \"7iric)u: 'i paí"arnete 1"5 l'Í' ¿j :{>!'».'¿ "('7r-r¿: tim-
S'":- tc'ii' -![i', lnc]Uí"jcci iri tl!j>. manual due 1(") the' l!(j>c' J!?[C": 'ElCti(3I? of cu i
parE'> of' ar} operat íDf s.\.'síéñi. part icufar 1\" the iíankeci and }"nrt¿Lr)}e filoS.
L.SCt·G2 operates ir: e: t!u't_ a:iini t'rac.í i\'é (ño\"i ce )or comrrtand !irte driven (eu:-
pert )rrmde for ñiÁ"\, [r!i'-¡lj! f}E"ú.il")i .i it\" and ease of use. If vour coriipurer t>
i"umíinc ííP|-'.3. t?;í' Z: íF.t!',._ir(.];"íRl¿'nt is aurotnat ical 1\" detected and ZSCFG2 \\ iíl
ljÁt: ',"ÁiC'fj citt riS_)u'a'> >uct as reverse video and cursor address ing tc': enl7an: {-·
the ciisqüay.
As in all of our supporú routines, abrief on-l inc help gIesg¡a?'.: is. ami lx!ir
by enter in.t' tifé naruc f'ci lowed by two slashes as :
ZSCFG2 //
hiúá c(jní": p!u'"'1í io:i toc\i ¿:"i(.'íi"ll3:[ ic'Ñi :V{ul':'. it:m,-|í ¿() tht' ZS: ".'S-' :-y:-.ú.. i:, .'t t.'
,". ':ri!¿"sj,¿ij'!."' ,'i": :")l'!| lit ij" 1(". Sríteraci i'jú i"i'(jn]: ")t ·-., m!!accumtely :"g·t it- g.'t ti..-
O;'i l¿Vt'- ,!ñ·.: '"tATí: :'I'"" ¿j;t.. ;?-li)!"]i: }" t..LjTÑ izurat ion o"!' :':y!){.'>:'.
6. 22 .l:7gí'j'"(..! j}"íÍcr¿íc'í 1\"(' Éb: í:.
jl") :-, "'"'4,/ :- (''·' '" ·'""' " "' " .. .j\ ,;;jjj "" ¿-n :¿' :'[!1 '. f. i '. .— -'4.. ':-.,.- {tt'('- tt: :''¿. l:\::z'."·"!' ';'!'. ' '·'")'"¢ }" """ ""' '- .,, :'
ZSCFG2
lfti "'.¿ '!1 :·" j': .; t-y'. U"o:,i,.'-·::í j":"v; iiú'!. ', í"t'; s: :':"t-" '."'n jg, C>jn"t.·;. :jt"' \",r_; ",", ,i
'"'" e"r i"("jHtt: "" '""""' ·"'" "'-'
'"" :'". i" !'..' c' lt]'}"-' :-'}j; :
t:;' .- t"µ i:";:- \', :ti", ,te!íc ürc'n"u im )1Sjí )> >;.""i 11l"" -j;tj'\ t": í"'··'
\,t. :'z:-t'; íg) ¿';"}j!,: :":zz ""C (;: -;""..|.\" i: ,"ü"ai!alt'c. !:\"c").j a:c.' '¿"¿;"j: : ,.1 c'ol"'l: 'u:--
(," "':.j? ].T!'-"" '-·¢t! :t"/¡'tj '"' :tIt :"}-'! ..';. ,ji" c¿!: "]n(':r :-UPpc'í"[ t'i!rt¿":-'í C"Lí' j,¿·; a!ÁI r-;; -:-
.,- .: !.(. íjt\é. sm: :;íj; "ít"'· ·L""l'..' ad: "€-r,'-,u .:' i> mtnj"'!y ut'rcñ ]c"/.i t: ptliú s:c?"éei":.
,
L.:"" j!i1'. :2¿,. '. li,:'.': n'. ;"¡;j .L'to: jt.ui (i: !"t'.:.:c"nc'e>- Mtmten tn'- 1'·': ."' '.i]' t'j: c".' :".
tl"i·". '. !"" '.i "' " t. '."i!': t:,' "'!'iú t'! "j i]"oñ!Í!ci"'í tv,' il! I")c di s:j' !avt": l. :'-.;"j ú': an:j' ;¿ cE (i
:/,,r,!':y._' {l: '-?':,:'. i'- .
12f?
ZSCFG2 B/P BIOS tjT!1!T'fN'
...Configuring ZSDOS Ver 2.Cl Z3 Environment at :FEOOH
ZCPR Path Address :FDF4H
Wheel Byte at :FDFFH
1-Public Files :YES
2-Pub/path Write Enable :NO
3-Read-Onl yvector :YES
4-Fast Fixed Disk Log :YES
5-Disk Change Warning :NO
6-Path w/o System Attr :YES
7-DOS Search Path :Enabled -Internal
8-Wheel Byte Protect :Enabled Addr =FDFFH
T-Time Routine (Clock) :F168H
A-Stamp Last Access Time :Disablecl
C-Stamp Create Time :EEB2H
M-Stamp Modify Time :EEBCH
Entry to Change ("X" to EXIT) :_
T!"it' íyps oi' (":nL:I"(tt in:-" X.\": -Átjtll ami \"E-r\.jÜn RL]lÍlí"!c'r C!_l't' t'i i"! t'.ti z;"'l?: "\"t-. .f't .!:.':"' '.' .'
hy áñ\ :u':í'i-: ;i.ñ"\'i rK)!"ífl]L';"lt :i)lc?í'n:.:":[icl!i l"t£!¿'dL·cl. Lino em" ir{)1}l"ltE': lt j>ió,.,jt\j i.
\"OU ",','i }lstse ¿g :iÍeµ.",,a,L'rd [C" t!i'.t tj f!tj'C t.In su.-: Pi: l'á".í¿-. cL':"tI¿i!i orrit.)R'-, '.'.l II
]"t?",t1"iút¿: ¿: a'. c'o\"úrej j¿"¿ft'!' ::i (lLt¿'!!i(·"' ¿iL'í¢: rii?tlcjn':,.
intc"r¿i::t i\"t' ¿j}-'t!Áí Av' Cc: £' i:-,t'-, .4lil: T"bl'\" of" €'7]t:-'.rIn2 the number or !ei.tt-·r i'! ít'ít:
It-l": of" c'¿- -'!" l }:"'c-' \4 "z'jit't.'. t'"L!;\'¿: \jo}".. I!" \"c)u se íect nuníóers betwcen Oñu ari':í
yi': .U?: :opt jgj;' is Lí1ar¡µc'(i f'i"o!í: OFF [t) ON (")1" \"lC'C VéTSái, arxi t:it' ñk'ñÍ-: ¿".p{í
sta: u.'i are ¿i2¿·ti¡í cii',piayccj Ti' \"Olj sc"iécÉ any of the other itetus. \"ou y, }jl2)€'
aAtm t'c/i" more clo '-¿j] ieú iníornúít icm. Section C.2 .l below coñüíiñ: .adtraí í€'íf
dc'xcri pt jon ¿j) l opt ion"- .
(j .?.2. 2ZSCl-G2 Comwanci Linü (l'.xpc rt Mócic jUse.
Coríiniand line éñt1"\' fc)! Lxpc'rt Mode- )provides the ability [(") dynaH2ic¿k: !y Su'
7.M"ms options withnz STARTUP scripts, ZCPR A}ias files. Submit files, c,r
directly from the your console. This permits the operatinp system pararúeter:i,
to be tal íored to specific applications. and restored upon coinpiet ion. For
example, asubmit or al las command might feature the fol lowing sequence:
Disable/Enáble ZSDOS features and set addresses
...Process application programs
Restore ZSDOS features and addresses and return
'Iai¡orin? of ZSl-()S in this sequence would be via acal! to ZSCFt3 with arµu-
nient p¿ís'4ecí orí the' command lirie \'\"j thin the script .In this fashion. you
not hare to c'ons:tanc 1\" attend the cQrr!l)uter to chany: 'IlxjS parameters.
St-·t t]n?q :it"L' !)asµ.U¿, T() ZSfj·t, litS-, 2TC)UÍ)3 oÍ" characters senar¿2[ed be (jIlt' or ríiorc
130
El/P BIOS UT!L1TIES ZSCFG2
tabs. spaces or commas. F.ach gzroup of characters begins with aCommand char-
acter which identit les tm sc'ítinsz to be chanped. In the case OÍ" the item
related to tinie and ciare. atwo-character sequence is used. A"+" si{zn iden-
tifies the Command as aclock. or l'inic Stamp-related jf'unc[ion, and the fojío\'.-
ing Command character tel is which parameter of the six is to be chan?ecj.
Command Ident ifiers for ZSÍK)5 are:
P-Public Fi le Support
W-Public/Path Write Enable
R-Read-Only Drive Sustain
F-Fast Hard Disk F'eloµ
!-Disk Change \'\'arninp
S-Path without SYStem Attribute
>-ZSLX)S Search Path
*-Wheel F'.vtt" V\rite Protect
C-(locP Rout ine Adth"és>>
-FA -Stamp Ac'ce>6 '} iriic'
+C -Síanip U"etñt" Tiñit'
+M -St arm Mod ii ." ?iÉjt-:
Opt ionúi \\"tji ch are siniipi "j ()rÍ,/: )!'7" tCj2f2 !é>: reaui re no m"µtíment s. \"(.)u e;1: 2?)!?-· Ü)l-,.
L!.cj"íÑr h;t' emc'i_in>' Íht- '-"ol}t!í: a;!;:i j:"1erj{i!'2eüs.). To ciisaMe such opt io:::·.. \': 't¿"
sutiyiy appern! ¿a rriinu.. ".iµii i"-"; to the end of the Tdc'nt :
!iú:". tO: "É.:"':¿it"l:::.',. .,·,
cc)r!!nia!;-l linc €'ñIrj" tu ¿:
c[!\"¿":,i€- tlí- i-a"t !?elop' L:¿:{)¿ti}: lit\" luz" hard diµi-:,. ":;":.
Pl'ii} lC' tji 1- car'[i})i !it y \)é.. an': .{l i": :.iñc' tht' iji sk Chantr v: arni:":>" 'A'c)ú li! bt- :
ZSCFG2 F, !-
'Lrti_Át" out i.m :Cc.U !_p- :t¿lí..:ti('!]:-: pa: anií'icr:·, v,hich me íí,¿n(';€·: ") I/'j ¿t µ,L-: r.:I:}:í -",'.
rl!"c)ni;'{ if] Ü: tR?íci-:-! !\"{- ¡j;..: '"). .ú.i'"it t' nc" pioii"¿'! ctm I)e' i:'o.Ut"ci ir tlit (" (:f::.LR;[g';::
Í.!!': t· c! I'L U'y Ih7 '.: .-' .lí't í¿' :{.:.- :j".¿j l'lú:s: ijjI"jí ¿-jre pá>sc·cl by apr't: nti tñ: ." I!r-: [¿"e t;j·-·
l (j!ííii't -¿;"í' : iatrii ""- -". ¢'"\(¿'ú Cl I'.' "Ltr'e 'JJlC'é i K\"t(" 'Ys¡"ji¿" l'.""tt'L-: t'"' 1)(.' tiíj"
:>sz!kc' ::", ü)u "\ "!-'tC 't'jjg... :¿-';í Lt .:'·-'1 :\_¿í[c' tht: }nt€'l";]: ¿! pat Htj;" !xc-: int- (!Cít-|,
cüi.l' '-"- ¿."' 1;j .- ".>4"Ñ,Ú ."i i?,·"! !"'io> (" !{)C"h: \'éUt3'l" l'- :
ZSCFG2 *Z,>I,CB
"}1)ü niuút !"c: l"liÚrtll"/í·" thí,: y' Y'cíct"d or otñe'" delimiters lspacem 1¿Ú'r ¿µ.;µ-] COTl!h,.'i" '
arc rcrrzi i. tt-'/j r)et\¡"L-£·n the (.'om0"ta!1ci Ident ifj er and aadeci arzumc'nt >3.An 'In-
..-
\¿j] id" error '\í"i i ipenc'ra! !\" !)c" th'-' resulr if' you forget ,\\'Mn entering m-
dr€'ss,eq ch nunji7t?!"µ\ á: .(-iT'?Llll!€-ntA. they are always in Hexadecimal (igi'j' X) '! 'Yí'i l!"',
apt iomi !eií-!in± 7erog,. JÍlC aj?orithrl"t used to interpret the ntíwA: rent'2: "(":_j
oñi\' retc:inu up to four ciigitu. Therefore .ityou enter thc sc^quencí
"0036C')2][)jí" .ir m"wjd he' jnLc'["!>l_eí€-c¡ as 104M.
The fol lowing sl'c'é jcjñ cíes-cribes each opt ion and wh:ití a]TernaíiI'eg are m_ai i-
able to opt inii:'c' it for \"ouj" .h\'s[er!i.
L). 2Z ."i 7S'"l·'ü2 ()jv ion hescr"ipt ions.
7!íz' 1'.'\) gy;';> ",',}\j: ..'] ['l':"!] ii tai!c: [l"!!]c of' aZstm.s2 S\"S',t?!: i u' }"."'-'!" S.í'í-Cif í·,
131
ZSCFG2 B/P BIOS UT!L1TiES
needs. ÍKS"TAL12 and ZUC'T'G. "both pres: ení the same iríie r;"í..-! !\"ü di:-pIuj ."! 7íí ;j
sect ion, thert'fore, 1sa;jríiical7]e to instal iaiicm a:: \4"t: fjas' "cñ2 tnt-' f' j\"
cumomizaíion with ZSCFG2. Each opt ion \'\"j ]] aisc· incluciü .specific aT"2u{: \e[l! :-i
for (ommand Line ení j"'\' Üi' the opt ion. options will bu: covered Ill their order
.
of' appearance in the 1NbiAi.l2 and zscrciz interact ive menus.
6. 22. 3. jpublic Files.
interact i\"é Prünípt :1-Public Files.
(tüµgK)
Ccmirúanci i- inc' Character: P
iinabi e-P
Disabíc -D-
7hi.s fla;z controls reco;znit ion of the Piu*Púri'ecí P'Lij ic a¿t.ribLl7.c' bit lÍÚ7. "
oí' the second !ett t-·}" in !líc' i!it' ruinit- ).\\'heri st-t to Yi!-> c:'i" acfi\.'¿1t€'¿j. i::z;'"
jiit" harin>" tlí is'i hi tst--t \'. ijlMáUA-lC ibh" from any Uj,.¿';" ¿¿["j'¿¿ c)'-: tm, :2 ·'.
Tbiit lñCá2'·. Ú^ú_í! m:¿g"cí 1'()1" thí i'i!c "n'i!! iocau-' ir Olí thc: i'iÍ": .t í¡".\". lí'j:.: !-
' {
Íé3.> cA' '\\"l";: Cíl Í.3t! .-\,1"t?-., If. c'.!rrLflt!\" S'j1c'¿LL-(: t:-, c( l.g.4,!-'u})l l'-' :\'- t-'-Tr".. .:,
:3í?t tt"j \""í. tAl ltie ,'.;ji I)z p:"i"j¿: íl' an.! ct:ñ or, !\- I)cj 1'crjj¿ ii' ttjC u".ur á!"L¿:
D:,'it CZ'.'r t!m- t: :li) !" t:-' .1'!i·- dt'f"a: '!í :-,c' it'"].l" !"or tMsí oi"'ti()2 : '·. \'?), !;
' '" "' '':_!' :j', ', .
1"l'lc :::. : j:'- i'- '. .-
t:,. '2 ..f .2|^ú|)!i': /'}'¿'ítl? '.'riú: Tm: ·tblc".
'g;j.: :Á"i :l' -l'Ut),."i'íttt"i Write Lnah! l'
.
l, tt"'1?,£ l''
(: (.?ijiI?Í,'_:n{j l.!: r- ':!2[:i"¿¿c?t'r: \'.·
}·r|,7,j2!L· -y,
!,)!'-,.!: .}t-- -\k—
\', 1!0 :'g··,
'- "t ¿\) '\"i :io:"a¿?i"..": ,l¿-·"i irí (Oli!l,'í,t'"?"! i- l Tit' 7!:
l' A.yg;.it ;¿. 'ii" i"lp':"t .''i".: ':t
oj"'¿' :z"g1 :c)""" 2\""' F"íml 'c(:u: ".. :it"' : jl" thí- (j :·; q,t- c' ',/> ):
)q ', t)U: "- !oc'aí E-',"j ¿; 'i·'}'"' rlí."·
;-'¿¿: , li. \" tlé!: St' {t()". 'jgí ! (jj:-::j'!Ú.). 7ií iezi;: 't '-. to \\'TitC" ?c' thl' li]'; i', !j:t-' -'" .:
i:', ::"F€.',icj--'.)!zí\"' t-i'j_;". 'l!-it· íjL·j,_:'--:'. >bett!!"l? |(")í_ this (}Pt'c')t! i"j ;¿:..
6. 22 .3 .3 Kcad--(.mly Vector Sustain.
Interact j\"c' !"'¡"ori!!^t :3-Read-Only Vector
íl{")££|tj.' :'
·L
(c)!|lrll.?il}(: Linc Cha]"?¿¿ter: F:
i'.nahl c-R
{"l]:qt-:j)]c' -- R-
VS: :: sc-i: to }"!-S or act i\'ázéci. tht· nccüí: z! \\ri te Protect véCtQt" sc't by z4g|"g-)s?.
f'urict iorí 'í'ai lZ>f \ii ii!2t.[ Fu cie: u"eci on ¿'x warm !)qo[ as \','i th 'j?í/\2 and zl·!.!x")y,.
É'At :- t"o ?\() U!" (?lb: !?"j!t.'Z .!!"1: :'.'.!"1tu í-'rüiecí" uií"tor 'ñ'il !!"unc'- ion a', i"i /"]í-',f".'
É:
ñ.i /Hl ?{'>.. t":)t_- í"Á^!..v)í j.t'íÜÜ>' ("z'i íhi"' ontum is "\'L'-'-.
1'lí>
E!/P EllOS UT!L!7"!E$ LSGFC2
(Jj. ?2. 3.4 Fast Fixed Disk. Rcñog.
Intt'ract i':c proLErT :4-Fast i"ixed Disk |.O3
(to,q,zic')
('Qnln¡arld Linc character: I"
t'.nable -F
Disable -F-
\\'hen sc't to Vt's ctr enahleá, the aí!ocation bit map for afixed drirc {íjñ€ in
which the Y\"ÁCÍ/ buí"fc·r is 7t!"cj) will not be rebuilt after the irÁtial cji"i\t'
logon. Thiís resu it:-: in much faster" operation for systems with Ekrd lji:'k-s. :'íñt_:
ki\'4 dixks. If' set to KC) cc disabled. ijie allocation ínap will be rehuí j[ eúc'í_'
time fixed dis,k drives are initial!v selected after a warm boot. The' út': tu )
sc'ttiríg Icjt 'his ot'[ic'¡] is \'"L>í.
6. 22. 3.SRisk Chanpe Mrríin,".
:gtc:"ac' I'.": - P7"olkp', '"-Iii sk Chanpe Warni ñf?
+
(tq)?': ej
(:_)n!rlí¿z7"]('i Lint" "h: i!"a':'[¿:!": !
í'.!}¿i|)í c' -!
ijisjú: ít -!-
\',ñÉ nsÜt 1(' y! :> ("/í" e:a.:zi'iec!. ::im: "n it"f i'"i !}Í")l prin: 'm e'j"Ii'I)í"."."t.."" }: ,":x'L:'".:' .I.-r' -
tha: ¿; g} -}'. u' :;U-'ht \".._:
!2le-nl':'.jl:¿ cif"i"\"¿" ',"l("'¡"!"|;: íl it" t iÜjY'\" c1i"j: cl: " j\"t: ,' jj¿";g- I";,.,. :.
ch: znz'.- :.;¿ \"c-).í ;;"t"'-ó ,i::;." 1"-\" cuht·' ilí-: i :.(\:"}zFc'.j-' .:'S!}':")yr ,j¿íÍ: íL')::,I :- j-,.'
1t·: 'i", ',!,t r,,j.'. :1' 4a:'"i .. -.'U '. 'rj"..j .]¿ '-.tit jl' o: "·:lig{,·¿!:L;c'{j. Zl) "\'r'gRT:tj;"},i! i'. "
í"/¿" -' l'·.1.': ..::n' 'il:''. 'i:" ." ij : i l'-; :,l."':L2¡l!-." iC,t! 1\" lDf,9cu .cín' t!Í'l opí-; i",, }ir ,l
1'. ''A ty·..:(- .' ... ...-.. - . ,a. .: '- ícCL.' i">U-t: ri.- :j}; t;, i.-. opt µJ;"i i'·. ?\', ). : i.'1(.
-t.
.I l>;: I L,. .,,.,.. c. —-. ,
(i .:'.:' .."i .(-i f'¿;jl '4timui sy,"tc: üi Attributc.
EÜeÑ-,1. E;"..l }'¿"c)rl'l;'1 :i) -Path W/o Systerü Att r
'í{.)?.g¿ c'
7
()fq t' Li1IÚ L'har¿1cIEr: S
!.ñ,-tblc -S
!"isabk-· -S-
'Y\'}]'¿n s€ t1\) j"jj$á or enablúü. i-'uMic Íiit:son drive: -i along the Path 'i,iil i'".
Íbúñt"l v\'i ínaui tiít- S\"¢íc'1h .·'\t tl"j Újté beiníz set (see 2.9. 2, path Di rectcm" Acct ---
4.
niodú ).It' thi'q opricm !3 >et to 1\'(") or disabled. Public files on cIri"¥"E±, ítj-
d-"essc'íi a: cj!!,2 Éñe í',ith \\'i li not be found unless the System Attribute Lilt ít: :t
"of ti"'t" SC'CQñti character irí the fi ktype) is set (see 2.9.-J. Path !iIt' A:c'c .-.-
!I"!ó¿j j.fiic.' cit-fauii :·,ettinc for thb: option is NO or L)isable·ti. requirinµ u-'
!'u: jl:i- !"ni- 9'ü.;" o::¿_,.¿¿'eb>: r\t(· files: .
i33
ZSCFG2 El/P E?!OS L'Tll_l7lF-S
6. 22. 3.7 IX)S Search Path.
tnttractive l-'ronípí :7-lX)S Search Path
Opt ions -( I) :' isat: le. ( S let addr. (Iinternal
(Z )('!'!<3 (oñi\" it' runnin,z ZCPE'3 )
Command Line Character: >
Enable ->addr, >1
>Z ton ly if' runninp ZCPR3 )
Lhsable ->-
Uen thi soption is selected from the Interactive mode. you v\'i I! he rrorlí!jI: _?c!
for one of the three options. Contrary to the earl ier ZSTK)S1 configurat ion. a
ZCPR3 style F,nvi ronment bescr ipu: c is regv ired, so the fol ío\'\"jng prompt wi l i
always F)l' di.sr]¿1\'t'(ú:
DOS Path t(D)isabIe, (S)et, (I)nterna1, (Z)CPR3] :
()!)Úr¿zt iñfz Z>i"!"G_! in ÉÉ\e.' {'oni!!": ti!í?"! i-inc niock permits" \':-)jj to st' ccr Ü)l- S.3!Er- C)!'-
ticm", ci!!"c'Ltc!'"\" 1'!"l)i: 'tht' cQR";rlía!!(! !irít' ax. su: 'miar: ze': jaI)c1\": - .:Co acij 'i tjo7'1: .l
chara('[€':"j} are recy.:i!"ei"Í 1()!" ki: .a'"'u:. Inze'rnal cu ZCPl·: -í pjüÍ2 S'.L"i€: ("!.jg7. i7" i-. ·j'
cHoose the ">It- ?üju. ;c: :'. 9"\)' \',"í l:!)(- :'!'¿"'nlnt í": Iq!" ¿- l'ieµ: ?.(jc-'c !ilt,"i !¿';C]"É!"t'-. -. ",', i"ti:
Enter PATH Address :
,' 1·:
!"' "." 1'(. l:" l!{-- "¿'¿íi"Á"!t :" .Kl" ,}¿ ": t-ft': }" f Ut--. ',','jj: ¿u- L-l- '-.'- u:'!:jI1"!(" cLj"t": 'L'!:: !\"
_Ug"'¿;j', 6i1' 'L ['.. i¿;" ! ! .; ," ;t'-.'-! .'l,'á! : 1 (j lf]'qÉ("i! !ut 1ljG ]l'.> '.u ;.",'1
iaCOiiiÚ' i t:''. ,
". <7i'] }"'1"' " "l-' :·¿·ji" -,: i' :é', :l.'í j". t>,f :Í;'2!},'tµ'- m'- r: tt'\'st ':"]lí": :c) 'L t;' i!'- !"--I.: "."i y- "c;- :';.:-'; .;:
7
fjñ.: iU.:1! íj\"c- ," : ¿t.' '-, .
ll"c'j""-'!' t: '.'- .';j' '.j?'. !)()'-' j';gl_' ("F\-"c(')iíl..j, [ijf" )i]i,'[¿",.: |¿:rl 1'! iinüí'í,' l"'!'(""'>^Á"¿z¡i: ,)",-·;-
1[. "i"" ¿'1!Q'-j (")í lit- :ii!l.i?'." >, :n " j.'· "'':- in t :i!, l)("j\: '? !'at!' TO í!ítj (ii": \í' am U"c-'l ¿t .{
',i!'ít': "t" tií¢- f'<i¿'\,:ñ! (":', t' 'l¿'·.\"" ::tX. (. 1]·-?' i' .!'.- ·· au.' l..t C)!"t-¿: .'in" )'X: !: ::".". 'K 'i '
!11 t!r,"cc \'c!)".
"lit.. f" ii" '-· t'.';¿j 'j i"'i tc) ,z: -,:-A yn 11 "i:':tm a(l{lreb: )us inµ^ tI"1:c' (>,' et()7'f. ju;j i1"$,'i.· i::'-
Interact !\"t Moc'lc. ("·1" Uapt'e'rl{ji: i>" the' acicirc'ss to ÉttC comrrcrÁ ('rlIii"E: '2:[L'i_ i!' Ét: -
Command i.iríe ñiock .Iou \\'i i i Ik' rcspon: -:ihie for in".uríng Uh-i ¿"¿:
7y j"üLt: ¿:.1. t!í. t
a(ic]re'-?s conf'orni'i to pru;m" Z( !-'!-C 'pal i"j cit-'f ini tions .
Íl'h'-: sü-'conc í': ay to gyyr a!m9 í-'ti: kig? fo uin-- tM threí' e:erll€"nT i!'ítt: rn¿z ipa Ú) Ij '.
se^!ecting t!í:-': interna! c:pi Niñ i 7"Qh! tht' Interact i\"é yodL'. qi adáiñ? an "! "
aft c!" IM (í)!í?ll!: ir;.! l'ha :_a:'t :-- :" In tConmanci I- ine mode. Ai-. ciistTij"/U[eci, Zsiu-.: >
ccmtain". a\jiñ;t'ic path entry 'AI): "lcj direct path searches-. to L'sc'i" Area C)
on 1)1"" ií"e A. Ari alt.ernaz j"jé \Kli\." to activate the internal Pe'-th is 'A'Ü 1"! tfjr
ZP: \'I'Éj.C(N ut ! l ity rtíadc m'ai tab !€- \\"ií h LSbOS! .ZPN"H will enable \'ou to Fh?.n,tz'
the cic'fauít paíti. anti t"jt.'|'!T!t.' uj" te' ehree drive/usc'r search e!eníerñs.
:"!iC fínnl nít"i?]s]"" é;jf' j.t,'íílñ¢? ajy.;j- !·'mn i"j only éi\"Ái iabie if \'oü á!"(' l3!'¿-': ".:.." u"
a,': 'r'r: ."i >1
\"'-, ' ':"lít .iti'. t_;'fj'.j: --' !2 I) '>t': '.üúiñ 'ttic' (::)('!-'í'.:.": o|"'i '-in I'"oy, tjt- ,n:''"
¿g: t'\"t-' \k: ti- .(. i" J-ji 1()", ': :t')t' l- oll!n: :tr]í! ('h{1!"acít-'" \\"itt: i: 'Zin tnc" :.-(")I}¡}ll.kt"!' i:" l
1 E"t:
L?/P BIOS UTILlTIL"' ZSCFG2
rúoch-' ."!"!u '", !-'¿i[il Ñocit· v\'] l!!"7"[")t)?.n !y see litt le use. huí is mack á\"ú: iicí5 U? for
syste'rti", u:h:ch nzuct ñKU"U Umr: three elements in apath. The priT}c'!r¿"í: ííu¿'uí-
rama '{' c'i' t: '.:'7y tM,"j'j: ¿jpath i"', that requests t'roni the corrl!íÍanc! r'l"o!;: i"[ lú. ;".
AO>l may result in n-squared .>eai:ches where n¡fj íñe nuni'x-r íñ" eiemc"rns tri íhc
paríi. Thu reason is that ZcPki wi li sc)éC: tthe first path element". anA ZSiu.r-
wi !1 sequentiallc se&rc!2 a!(?n? the entire path if' rhü i'iie is not fcu: ní'.
returnin 'ttj 7( PFt'l V\"!Ú"l ¿2 "fi le Roí found" error. ZCPR3 will then select the-
second e!t-'!]|eri[ \\ 1Üí zjjcKj: >aµt",irí searching alonµ the ent ire fi le. '!his 6Íl'-i:,-
tion doet not occu!" once an appiicaticm program is started, since' the ZÜl'!·ü
(.on}l: lari:.! P'r(7c'e>g(3I' ¡sí no longer act ive.
The ciefa'ült setúing t'oi" tht-' IUS Path is "Interna!".
6. 22. 3. SS Wheúl jjytc Write Protect.
tnteractire Prünípt :8-Whee il3yte Protect
option" -(:'}i±,ar\ic', tS)t't ¿7{·¿",'/" (:{;('Pi·:l
((jrtí: iía!"I(": i- At' (harac'. c': ": *
í-: -ml.!c -*addr
*Z
!'i:-.:,!'ic -*-
'¡.nt-r} X"!'.'.' "t. Ie t'; t}": z:.""ú íc: :: '1r(")[l: tf': ;' lnu: -rac't i\ú !'ít"<i: - l ;'tj-,i ': (,-\- i\1 ':
l:;"g'"--'!j:.L-{:i ",',!Ü ¿-!.'j C-í':q:i:7-I'."'t},'ií ;ine'· co j'L("¡i!'!: 'í2 a"cai !¿-"íl)!t" chc'icc .'- ¿. :
Whee7 [( D)isab1e, (S)et ,(Z )CPR3] :
?7z" if_'C' :r::: í!ít.-' !l::".'''- '-y i- Ii"'!": t".' t: :"t;' :'l!' -:" .i : ) c' :" t!!?",[i]: ': !Ít;-" I. !: 1" "' 1:¿ ..l'". '-'
'" ''"'"' :"'-· i"í: )·t. ::''t: ill ' ' :í:!7'- ''Ql: in:i4r!':i :.!n'-' ñÍcYi rj ','\' il:c'au'"j' :" 'i: }' ''
.: fe . - :.·,·. _ ,"- :..L',tt '- "()' ..Lryth(_ vGf""" itj ,lT",?" :X" :,A-,
íik cj:í7t:"·": t"'" lÚ. .;'jt,t]: 1!::'- r' &Aci !-ra"i": íre !. Lmering ¿ín 'S" ;¡z; :;j '- i!"í-"ú;;
ii: '-. 7] !. t:'!j:í" l"!".;j'-µj '.", i!al u.)',', \1.'! 'c) 'jt"it"I" aHex"a{icci!n¿j ja."lc!'ú .-':- ' {"i .", '". '":'- ·: t
I"'''"i") '''" '·t")l"" '·'·- i'" ':"t\" Tt^ " ' 7"" I-) "'" '""" '"nú j; .:·J "
Í<\"t t, ,,\:'... . -·"' !- ·-"' .;',:. . Iln <, La ,.t!ííí Ltn',' ?) \" EC-: J""' :- , . - l < '.. :.. l.:t'
Iit:"ct"' -, ",''""y !!"( .t!', 'jr1t?[ t- '"t um,j :iiu:<íN j'-"7. Sc'N in." &V·hee liiyt t' Fig .? i"f' :.-,·. i" _.' )"1',
y·
t:,:J· {()!: z,¿|t\:Í l'n·- -,i':f' ' '. tt'i;'g :l'"' ?¿nljL'n'"il!]t" aL!í'"': adec 1!Húi c:"ÁJ e-":''L e" :[i"!:-'
';.}]Út--i (: C)l}á:?,,"¿:j:É íYj,: ': ¿¿ úc·7'. $!??(-': "i7}µ" 1'"¿ "Z" Íi"or1 thú' interactive r/l(j[_: ¿, ¿.; ¿i '-: '.)"
pt,'"ari!cte!" ·,íj it;' :uU!'-- (on;|llal: ::í i.iñÉ"- niocie wi i iset the address tc^ tEt'- ac"i: 1rc'¿.-
úeí inc--! t"; 1. |;é íinet-'l bytc in the Z(_"i'R;-conip¿ltih!e ls/P en\"ir{): )lÍÍt-·:":[. lfj:
ck'!t·íuít fu:"thí"í c"ipt !(jt] iu ú1!- o!" Disabk'c! to assume that the um-r ,'l¿",G ft :
pi" !\"1 !t'c7f?" ,
1Á5
ZSCFG2 B/P BIOS. UT!L1T!FS
6. 22. 3. 9 Time Routine (Clock Driver).
lnteracti\_L? Prompt :T-Time Routiríe (clock)
Opt ions -(T) ) isab le .(Slet adar
Command Line Character: C
Enab! {j -Caddr
Disable -C-
This opt ion allows the user to enter the address: of aclock drmt'r rout int"
cc)nfQrn}in? to ZSDQS sumc!arcb., cc disable an eu: istinsz clock routinú. WMn you
enter a"T" at the prompt in the Interactive níodí'. the fc)iio"\.t'.in7 appc'm"r:
Time (Clock) Routine [(D)isab1e, (S)et, (B)ios+4EH] :
Frítering a"!"' in thc lrtui'rac'í i\"c' rríocle or the c-'omtnand Line seciuemcc' "( -" wi ii
disahle' áñ\ e:-.:sr!n;! c'|(.)(:?:. IM primr." effect crf" thi> is [(j cau.7f? a"z t.·T!"{-)i'
I'tt: rrí U") ixjs füt'ict!Q!_t cct!í": y'¿ atA y.w as \í'ei! ¿jq disañliríg L)at€'/"l"inlc S.í.curij"'-
Iñz? f'unct inm. 1[" \"04 t: ñítM" ¿"i!"i 's' at this point in tb'-" in[e: "¿¿c'ri\'c" w"'c!<: .y"-'
wi] i M!'üi'z he: "p7'c)li!nte(! for ali¿'xacjÜ(. ini if adtii cgs cE ¿j clock d1"i\"L']". "Fti'.-
sariit- t-!'1t>: :t oí s7e[[{n!2 a('l()(-7_. il!"[\"'.!t" ad\zrt'gs is achiE.'\'e\t iri tht' (. c}Iíltí\a!í': : í-!!i'-'
mode by erítc ,iri, ti"té' "( "' t'on: il:.:R[i characi tu" kN icY,íc<í 7,'.\" '."aúci i-iex¿iciL'¿'j ñpí]
a(j(jrt": -,s hcg inn inz: \\ iÍ!} aÑllÍíPR- :.bt?l': ·:""Tin:i 'T'.", t:;- en7.¿: t"ir];" '". ft ,jy it c]ni;i,¿.I}4:
line ci!": z'jtl!c'rí{. ii\íi Sc! éh': jj' }"3 '." !UKÍ Pr i'.í·r adci'"e"+ [íl tñú b,x: 'n'- Of H/'l' fsíO".
í".st"t i>\" ji-.ñ \í!)!'.-'!i c"".jr7"€.µ.p\"\'í"!> te. Üjt-' .}t!rll!' iablt' éñl1"\' t"cu" ". lm- ií/' '/>jt;;· -
co: úpar íij it' '. iO: ?d!" i\"é-- r.Do NOT en ter unknom va lúes since unpredictahl
resul ts can occuít
l) .22. 3.1() Stauít' j.aí'.í Áccés>",€íi "l iúíc .
]nTt-!_a¿'t |\t-' £-'!"c)[ilr'z :a-Stamp Last /i.cc€s: :: "Áfl'".:
Ül"'t lOli", _tlñ l'>áUÁ. ,l!,'lna!j)j¿
'._'(')ni!Í"l¿írlct l-int" (ij:c'":zc tt:;"; +/'-
í-: 7iíl:!t· -+A
¡'Jm: '"lv --FA-
"l"h: xoption i'-- oíñ\" m"ai !iíl"Ac "'r"it!í l-'¿i: .¿'.btiíIlt;)t iíyp: CIÍ ÍRitt ,' 'J'ZI?n_· !m:..:, .il-
pzms. t2t' f"uri'::t lO!i ]'; not ci€'t"j{]t: c! anti i:', }.gnÜrcci \j'i thin ZSí_ujSZ. AS s,ííítec: 't:
Section 3.-l.j.2. L'n!c's" you h:ü_u adeijnire ncüc: ttj rc'tein arí'c"c".rci ("'" íljc
ía"ñ tiine files are ác'cévs?G. m:'recomníencl that \"ou dis: ahlt' t!iisí Of".'t ion tíj
reduce unnec: e:zsary Q\"e: "he¿í;._!. To st-'lz-'cí thc I-a>j Acce>s "i ime opt ion, eníc':"a:í
": 2" at t!x' 1nrei"a: "r 1\_¿' mi: íp!"oKi?t. '!"M: - will display the Í'Q!]o\{"ing prompt:
Stamp Last Access Time Routine [(D)isab1e, (E)nab1e] :
If" \"ou entür a"I)" at this point in Uü Tnteractirc' mde c)." clisah le tríe tunc--
tion wi th tñt" sequence "-i-:!-" in the comaíand Line níoclú, no timesi. \\'i !:he en-
tereci in tht-' "i-am :\c'j"esµed 'ftt'id in rhe r)ateStan}pt'r ti!/j'. This c'pt ion- nm'"
bc !"£--E"r)¿tl7: ,'¿.l U'IC: it"¿'[]!"!' tñ': '!-' c)rTi{'n :nt-tic- ln-[t'!"etqFFi\"e nl¿")z"i.5 f"i"CYf: tfi>
:"'" '".'in ": '"' 1"\" r"'oR'j"" .C"t7' 7M"-ja 'j¢"ñ\-'- '4^5' f'r")n"l lht" (""'(7ii"Lr|l¿ip'"i lin'" E1Ü ii
136
El/P BIOS UT!!.!T1ES. ZSCFG2
6. 22. 3. ]tStmm ('realc Timc·.
[ntL':"?¡':'!]\."t: !-'roü,,"í :C: -stamp Create Time
comwtanci Line character: +C
Enable -+C addr
ljisable -+C-
Entry cU' a"C' from rhe main menu in the !nterac'tive mock" w.i j] al Jen': you [("s
enable or (]is7!ble tht-" ("reate t"ime suínípinµ feature. Asecondary pronípt v\'i l}
be displared as:
Stamp Create Time Routine [(D) isable, (E)nab1e] :
Tc) disahiu the (.'r('at¿- tiníe .entcr a"I)" from the second: try ri"[)nir' .cir th'-·
g:eclt!c'r}c¢¿: '-f'" -" in chi' ('o¡Í"tn}an(í Line woíie. To eriab!t-' s'Larñpíng qC" Crc'ate TiHíEs.
cnter an "i-. ' fí"oTh the' sc .'ondiuu' rroríi['t" froní the Interact !\"t- mocie. co l):¥" é!"itcr-
i:1S' tlít-- .Ai ,£'ytÍiÚnt Nú-;'.ien' c"+' ''t' Tc)tíi the (:
c)nÍrllan(j Li ne mock .
u. 9?. i. iZ Stalrt? Modi f"y Tiríic .
!:í1-t-·:-/3' L!\"z !'i():iti"" :C-Stamp Moclity Iitíií'
Uj't u: m' -- '.l-'jij,¿tl^i€'. (!í'riaF.le
'{)!;i: }t,t it! j,!-: t-' ('í"l{¿l"¿¡7.-'Zt]": -iN
I.n thíc-· -+M
T'g
L), "¿." -t' -+!d-
"! h' t!tíÁ' i"' )Úr'.? J¿: t" :!i:","""i(.}:? C'i ¿j I,): -' i'-' p7"(j: ?Á!)i i" i,'}'j' nm".l "."¿, jL!¿_¿;jit_· c). t!?t
tt:íu-"' C! A':"c':f :11 c./'>·,í';" .- '."I\--i. .:". --· such .you \',i iiP1"(: 4:;:1l) !ynúi"c': "F}¢.'."¿- ;·¿ n."e"': i
Lg) t"!Lyiíi.tl(- zi'i: -- Á."N."r-. 'Glju líí 'lit nf^e¿': ¿"irl.ho'\'€-"\"{"!' .erií l' :" ::'"' i' ';t :t2'-'
!:"':('!"éiCt;'."¿' jl,9!r l"]'i.)r.¿: ":.. '\ [-' 'ti', líhún h'.: r1'c¶e!1[e{"i "\¡ it!" :
Stamp Modify Time Routine [(D)isab1e, (E)nabie] :
ti yo'.: crm.-u ¿j 'j' c: r: u:-' l""-"¡r}i in [l't" Interact i\"e rr{c)('!t' or ti !",¿",'"P i'· tííí' ttj;ñ_-
[j(-)t" \\Ññ' 1Á'¢' ":!L}"!"lL'[ +'\'j 'in thc ('I)rriIltan(": Linc merit .!"!q tih!c5 \7 i' ! h: ",t(' t:
in ti'c '"\:(")..,!'\"' iic-líl O! aru ¿'ijt1t"c Jl"iiuc' >tanip activity.
J"hi sopt icm Rí:'"tj" bt- r¿'-E'-']a|tjj Cc: by st'ject inp the "I "' om ic'n in tht' lntt'ríic: í\"¿'
nioc!c- i1"()li: thí g. g'.'£c'L7;]L!.'!I"!" rI"o[!!r)T ,ür the sequence- "+ '.: froni tÉic CoRit1i¿íia(: I. .!"j$
rnMí' .
13"7
ZSCFG2 é/p BIOS UTILIT!F3.
6. 22. 4ZSCi'G2 Error Messapes.
(mÍy lv\"O error messa;zes isí in ZS('í'Ci-!. For 1jl2C' nií.' :tmr .i'it"'\ t'rm" yc:'u st:í'
will deal with im"aiici paraiüeters, o:rentry rri-istai: es. 'Ene t'n'c' error mess¿-Qµc': -.
are:
-- Invalid --
An invalid address or character \'\"ás entered in aparanlL"{eT.
m'* ERROR: lX)S is not ZSIX)S2!
An attempr was made to run ZSJ.FG2 on an Operating xystení whicP, wa>
not ZS'JX),S2. This prügram cannot t"unct ion under any other operating system
13t'
!3,'P EllO". lj"!"!!.!T!F9 2XL!J)
6.23 ZXE) -File Lister Utility for ZSDOS2
ZXb \'Erg,|(}: ?l.tm iú: i_í modilication c:!an earl ter í"er>ion T"f3!f: '¿_t',{..-ti ii !'Í! DL!"
zbtK)yb lpack¿zg€'. it is [Í"lt' :ísjx)> r: x[en(j€'d !.'!1"ector\" list in' proµi"aní (ie1"}\"e{: '
f'roní the 7x'i?k itcjoi XI' Ii7v\ ri tr"en by Richard Conn and now mocil f"ieci to proper-
ly return di >,!: si z !Tíf7 iniorníat ion j'j"oIlt abanked ZSDOS 2Operat jñ,í' System.
Mam" add ir ional cap: íbi lit lex were added over the ori?inai .U) Ill. nm tm
leasn Cit" "¥\hic'h j.q the aM iit\" iq display time stamps for each file' in avañe-
Ly oí" iorrüat>. Z\J") can (iisr-'ja\" file bates and times ironi baíeSíaníper. P2iú: "·,.
anc! F'Urü't'rfect Systerni'i' büsi_ñsk stamp methods. In ZCPR3 systerim tht-- \'tít,-:.!
byt ei"u>ea tCj cíi>abie ,SOii"lC- f'unct ions as a security precaví iorí in j;tqjo" t-
CíCCéSg ,qystel}ijj.
6.23.1 Usinq LXÍj.
7)¢!' i> :¿'."[]'."¿"(;.t·r' ?:.eríit:rin :!{'- nanm at {h's coRlnían{: ' ?rÜ!T|pl ,nn': íñiRi' ¿'Él- i('i -
í()'\\'L: (2 tu cfj"t lo:,n lCjT"i\"é a:rú u3l'j" 6!jEc'i¡l\:"¿lt1()!i> u) c)b[a]r] th': -' '.:j!"£czÜj"'" \j'
an¿}ti?t·]" dt" :\_c· ó"" u:'ú'i" ¿it"t,: .Éi' nm'." also he luí iov\"€'ü tj\" '."ario'- "J r:^Lral1lc'ít-r"-
'ñ'!íií!: ,.j;-¿'j i!'Í¢. T\"!f"jí..-í ¿-:.n¿j.,"()[" C:
Oj"it£"?t the cjc>pláy. If opt ions áTE' 6stc"!
l\"l üi'.'gZ f't- if':'nre,>iút·t ii"i')í ¿S. !-i: e M}tcltlc¿i[lon tdr j\"t-. Usé! .ii!t' r"i¿_z:,":í
iiicm ilit- .'. !liú'-í ')t t)]"¿·U't".' t--:jj""r\" íijt' smanciard opuon character. a s íasr'. Aht- ::_
ñiC'>'í,m"j n,.'i'.' I.):- t_)l"}t,'t: !]t.--'.' j'í Ü?t- stan'iard rÍianní¿"r m" entt'rin ::
ZXli //
:·t ".i.' ¿j'- ':
:t-: p? ":
.íil't.'¿'[i()T}:' i'í ¿i n'un: í:i! 1(7j"!k !'".j!'L|!3trl7L'{"í \','!Úí !"!'í'-- ·" !"· '>ú'! if ". t."!
'. C)l]::!:¿"itÍl: ! '!"c> e}" ":t ':"rcr |[¿c. z'nm: "s :-.. l.' ", i'"i gtíít cí")t)i"enT ¡Qñ'e c.ieµcri: )e¿"! i': >'¿'c[ :c'!':
:.._. tñti· ";\"['l',,l'\ !ey.u¡': !l::i!"i 7tjj br;
ZXD fdi r:][atnj L/J Loptionsl
Iil}._i' iy. ¿";,-j i l túí: ",\ !'. I: ru." ¿ii"'7ui!i¿'n.t >,. a ai g.r!a: \ot on :µ" those' t1le,". SL: t]st y:11?
h'.íi ii- Ik Ctz J¿éú'[ ccú-ül It :O!c> ',1 !!M(!!¿Lriayecl. Aormm i\" tiít'Áf· ciúi cml t: ,. >',1- 1( í"l
cF-,í\ ñQ]I-S ·."Mt'!1' i!le: -. }}) tnc' current cii"i\"t-' and us«ír. "fñt cit.tau tse ic'ct ic:'".--,
!í1a'-" Mtimciit ltfü l):\' OPt ioñ paT"an: t'Lt-:".K dc'rai leti hí' 1()?',". i!' opúicm pY.ran¿eTcI"2, :u"t
á¿ts!rt'íi \'\ itlmui t_:
i"i\"t'. Ugt"!" l")!' i'i le s.pt"c ii ]caticjngj. tir"rí the opuons nícst !}t.
rrej'ixt.: ci mili ¿i sla: -j'. 'iñff sia: -íñ is optional if" any recii rect ion Cj7" éi:'.
spí'j]i"jL'¿![;(7!"}.q arc erñereúi.
6.23.2 ZXI) Options.
()pí ion p¿zralEc"i ers. consist ir]? of" ont' o!" two characters, aiío\'c yotí to Oí'f¿ .f'
seiecteC jnj'orr}laEjcjn tjQñi ti les on acÚsK., or to tal lot" the display tc\ \"c"): -:
particular neecis. Each of these" options i.Á also reflected as a pernianen i.'- --
fau it..·'.t'te" chi-c!tiing í': hích pararííett'rs you use ñícjst by using the comi'ñaní_i !í!n.
opt ionu,. '\','(-' í"t-':'(7n'ln"tt:'nci c(')n!'igu1"in? Z\jj to rrf'lect those raran}eters as cl'jt'¿t!.i|; -.
JUtC· ]"t'"jÜ !\ -\i"i ,! }>; iht.' ]"€-cj'.l1 '"éñ": F'R'. enter t"eu'er keys·írokt'm and c(jn"'¿-c![..lk"'r: z-
:L' !¿i'-í:-t·i" C):";r:'""::t |()é "\q'!"'L.':"! (: (íI7'e'.'Í-o;"!' scan is rt'qu !re/.í.
139
ZXD E/P BIOS l)T!Ll1lFS'
1he opt ion characte rs: are dt-'scrihed in alphabet ic,'íl cm: t'r in ttjt-- !oli(j\'.!n2
sections.
6.23.2.1 Select Files tw Attribute.
In order to avoid clutterinsz adirectory displav with unwanted file nmic's. 7ÁJj
features aíiá? which controls addition of those Íiles rúark-ed with the SYbtení
Attribute Hit. The A Option control sthi:sfeature. It requires asecond
character S. N. or A. control offered Mthese characters it,:
S-Include Onlv File: 'i niarkec! with the SYSteni Attribute
N-Include Only Files j\'ot marked with the SYStem Attribute
(this is tht' d€·¿a\j!!t condition)
A-Include" All F!Íl">
Soncc" lj:-i1" !Tjl.2 of ail N."(7:"l-S}".$telÍ: f"z!es IS ti"'f-- ciet'auit cor!cjiT1(")ri. \"ou \.\" i j
p.robah!r nor Uñti' thc' Nopz ion í_ery often. Thu Aoption. on tríe othtr l^nT](": .
offers asimple \4a\_ c":
f7"ie\í'in? Ai i{i!tt> v,íthirí th's current. direc'toi"y. lñC jj'j-
iM SYbíeni 1Ü€'.2 'n'hich are 1lc)In|a¡ 1\" iní"isible due iq the Atírioute hit.
Íll aZCi'ÍZ"\ S.\">.t£'ñl :iñerc' \'?h.E't"'l ácc'c's: -. iíág nor bet'ri m_anteci (Wneei byte' is O: :,' .
this optic'm igl'crc'L"i": tI.') :[{.")!'-S\"µ lt'r: if]]uq(y) iyrind the Aopt ion c!j¿-j"ac tÜ'i" i:>
ñí")ú per: uitt'-'!.
6.23.2.2 Date C'ispiay iormat.
"i"ht kite'" Iü! ¿i it:'¿j!8i)!a: ." lÍHt\" u.' displaytúi in c'it!'er tsfg7"E: it ?Y'$"\2,/!}i.'/i ', 'u"
!-}j!"c)l)ea!? TO1"ñ"i l)t;.'\.'!: ':.j'\ .'!üu I"lG'i\- o\-t-'r!"icic' thc· ckiault tCÜ"tff \4!Ü'1 tfi:jD
ODt 1(31). tkre is an e:üuw'it' '-" ! íL7-' \\\u íype> Qt" Aait' C! ísp1m>,:
i'S lorn: :
ZXD Ver 1.66 3Apr 1993 15: 43:17
Filename.Typ Si ze Modified Fi lename.Typ Si ze Modified
INITDIR .CCM 4k 07: 01-09/17/88 ZPATH .CCM 4k 07: 50-09/17/88
ZXD .CCM 8k 08: 01-09/17/88
C2: -- 3Files Using 16K (324K Free)
14-ñ
B/P BIOS UT1L!T!LS ZXC
Luropean }orni:
ZXD Ver 1.66 3 Apr 1993 15: 43:11
Filename.Typ Size Modified Fi lename.Typ Si ze Modified
INITDIR .CCM 4k 07: 01-17.09.88 ZPATH .CCM 4k 07: 50-17.09.88
ZXD .CCM 8k 08: 01-17.09.88
C2: -- 3Files Using 16K (324K Free)
6.23.2.3 Disable Date (Noljate) Display.
Whi it-' tht- cimpiay Qt" date and time information is the default mocíe O!" R,';.
thi:-, nía;," be disabled with the Noption to display more file nmiú". on aSC: -étu.
6.23.2'.4 Output Control ()ption.
a
'ihe OQ|"t i'""t' cí"!!t 'ü"\i "'. ;'y;;' >m" inter ai" scj"€'c"t' ourrU[ .emu rtí:ju iTe:'. ¿j 9·'.€-. íj'. .
"r: .!'"c'4gtt¿'; ",',"l"ltc?j at' !" ¿¿'"¡":l(Y"'¿-íi coínroi to o"j[t'}?7 harniacs. 'Jhe ",¿'c'jnL": ¿q.:""!'-
U-": ":'· r'-'(: ();":]l:·'£'[! :_íi"'-':
F-- Se lj. :.pcu: ,, Au_'..; :H"¿: "'tc':t-'r czí tht' C"M L)" 'íic 'i·"
H-'!(jL"Lj/' !k: í" .,·'{"'i'[7¿j/"\·.'!"[ :
cM (.i!si'¿¿-¿\" í:"i tortcci !iSl in.:
Fk.Z'3 Z.'p 3utmi It-) F'r¿tnpl".
t"): :}'-:{)!j P¿L")!: :::) 'ocu".n t?U?' i)j" huü: ". \'Jk: '1 t!zisi cgr'Li¿'.: ": i: i" I"'. :-' '" "'"t-
".' ". ft··:" ''"t qE":" ' j"í jju ;:': t-' 7"]ItÜl lr't j'; "l 1](-" cort Cj") jc'P '"' !" l" cn ¿;t íC! t'l. !"":";:;'í\ .
""Ai: q\: "'LíL.it; i", ¿,;'-¿Í"ÁL'U ¿ú;G ?kü ¿:\":i:|[,'_t;- [p ,'¿ Zíi'i: 3:>\":,te:ll v\'u.: tÉ' fú,· i... :.--.·-
Y' ''É,'u7, .i- - - · -.
!itÁ "T!', "'!j' 'c!:¿--b L--if K". '"·t'Kl;t j,\ .\-" :'> (jlj 1l.
6.2í..Z.€.'. Sort by Ná'nm· or "! ype.
"!ñt- CÉl ¿;j; ·,0), it.Ür}{jit ,e)í, ícjí" Z: ':í' :s[(") É"i :"S'T Sajj"[ i"j\" j-i le \an: <. i:X': ,"."L" jlit
'i\"j'é "\iíü"',ií": nl: ¿[cíÉi}'| :\i:[ll.:' ---.(")ij[lC'!í Sre\"e1"se.¶ the- sequence.
6.23.2. 7Primary DateÁtamF'.
ttN.' ieaíurw. ¿-u? al zccnhm 'ví'hich 'Á"i l i aítenígt to t ind one c/i" Sti·'\ er,zi t\"í"- :""· ""
hate/iÍn,c yíar!j|'.·. !c!!" e:íclí I'! it'. The' cieíauit conditions tel! Zú-!.} fo 11?>7
at[e[Íi!"t to locate i)au-'>)[anlper type of Stamp";. If tMít fails, asc'a: "cíÍ 1'· F}¿"j.)l'
for }Jc)qL}iyk >Iá!27': -. ÜÜlt: 3!j-p/'P' -lmú, cii:4.s, and finally to check. ÍCil" 1'J!>"N ty'c-
st amp- .TM Tq|'t ion causes rhe batestamper checks to be |j\"pas'¡e[.": .U?t:!"t->g
s!'eL"'!: !"jµ 1"e's!".)"l.S4 if' i)at€'b[anj!'t't_ trpe stamping is never used.
i41
ZXD Wp BIOS? UTlLITÍE3
6.23.2.8 All LWer" Areas.
The dlstrl3'jtjor) '."t!'SlOü CiÉ :'j.\:!) will only search asinpie tjSéf area. eítfmr
the cwrrently iQ.?ge(i or the expiicitiy stated area, tor fi les. The Uopt icm
will locate files in all user areas on the disk. Combining the U\i"itti the AA
options will list all tiles in al! user areas. both systeRI anti non-svxtem, (jñ
adisk. Thi soption is disabled and not aval table in aZCPP3 system where
\üíeei access has: ticñ been granted (:
*'heei byte is Off'l .
6.23.2.9 Wide Display.
Z)iD only displays the "Last Modified" Date/"i inie ,xtaníp. This may be' Te\'erbed
m" appendinz tñÉ Wope ion to the Command l-inc. u'hich generates aWide Qt" xI !
arai!atAe Stamps,. on!'." !)ateµtan!f'c'7 hCí±r prcn'isicms for ali three stamp cate,t'u-
j"!ésn P"Ü)o.g contain: -, (k!'\" Created and Modified staiüp>. \ijii !1· Üh- j. inµ it-' ;i;'-.,'i" -
Tk),s :-iIan]p áCCf"SSC'i7 íhrouµ!z L'o-4.'.i sr hú>t cor!"c"ghp("'i2[!:_.. 'U") ''.n: i!1c',! ..-'. Cl .:':J!t::Y"
creiñeci v,'ith thiu c)nÍlL)'"] i-.:
Filename.Typ Size Created Last Access Modified
BU16 .COm 8k 17: 26-06/12/88 08: 42-08/21/88 17: 26-06/12/88
COPY .CCM 8k 15: 06-09/17/88 15: 06-09/17/88
ZPATH .COM 4k 07: 50-09/17/88 15: 02-09/17/88 07: 50-09/17/88
ZXD .COM 8k 08: 00-09/17/88 08: Ó1-C9/17/88
6.23.3 C.ustorr.lziríñ ZXLL
"·"·, It L".:" t;" ,."''· r ; ::,,", ,"
7íl '·. st:íííng'- ¿.i! :1 2U"-"T p^ ;j'¡j'- -1(')," ,G';jj :íj"¿' cc'ütaíní'ci jI"í t'íí' jUt: /.'.i'.\.!'.á
ümc'n p:'.!",z l:tj' ti: '. t' :- !: :
üjjí ,·'1. .i', "(jt" r'í!"fy ¿'O'"\"' !'- '-lt".: .T'7'.':'7 cl"ií¿rj?'-'. µ· 'lO;': ut:'
.: :" l.'"·i!Iil]i(" {):'..,,"\.'! :.(p ;i"t'"j'- i"'--, '!7 ::'."f t'!"í>""'. ciñ'7 ci!í"r€'g.p(")n !tl.ti)t' u;"ñ ]('!: 1 j; : ', -
_" i - :t'"'" "i t,. . .. .,')'ttN.l't'l"\'.'J l)7tr'l '·/c ik,~ 'l}i ' - · :" 'i '''. ,; .l
m G,. .. .-. iLIr! y} ,4·'rf<,I ', .L.
,d. - - ·.'
i")j'" j"'";j": k"j()c'íi|!,L'?í(;' '.![ (Él'i i!,:-' 1,¿": k.ik": ,"-: \.'){:;C !q¡" L"lÚL¿tiig3 cíñ u3jü,2 ,'j(.:\t4.·.
1lj ;:
E'/P BIOS LSDOS Version 2
7.0 ZSCKJS Version Z.
\"éÜiot"t 27'-: j)'"':-. 1> curren: !\ iri acleve ioprnenta! phase. "l'hc' version r!"o\"iL!-
t·ci "y\"j íiÉ this' pack.azc- jy. prel imnarv and should riot De considered Ck final wort"..
j3e sure \_oü back up anv tiles: which \'oü don't mind sacrificint", and please ie'-
4—
us knew.' in as much dútai iax possible anv problems you experience.
Tn addit ion to the zsins \'eí"sion call (Function 4Y} returninµ 20> simit"yinL
ZSlX)S2. thre·e ñé\\" opc"rat iríg úystern functions have been adciecl. They are:
I)
Function 46 Rerurn Disk Free spÁj""")j
i) """" l! -—'I)
)i Enter: C' =4E (tun: .tict!"! #) )1 iuít: A=C) if (j¿;. <>0 iT Erro'" )1
E=í..'t""',"e i: U=L'..?'=15) ;; 1Ask Free Soace in iri lol.yzes i,
j: 13 placed in LÑÁ-fÜ (LSb,' 1'"ítu li
{
)) )1 ZMA+3 (MSB). ii
l' k
2. . ,. ._ --,= ,ii _.. , _- ---- -- —-y
]j.j ". f'.mct 1'7:>;".¿ :-:: ["t|-', i.': --.!. t!"ée Space from ful ly-barikeci systew: v: he:"e tm -.".: \
1)',jÍ Í'í':&1"(-' rrn ':ii I"c7í i!\" ¿j; jc'°;> ii'it-' m" apj'! ic'at ion>: rTo?i"¿lT!l' .:must !)e u.--.'.
Iq") ]"t.-i!¿ír)!'," t:iF[E"7!!li7.'- ir""-- :-r:":':t.. A]r!ct' tht't: -:'1 rm \4','2\" Icc i'·: '-)-'}"¿.1:.·· ?' :¿"'¿", .-"'-' :" -
EC
¿,i:i' ':jj .', I: g:"j Á [t' ,' í\,úú ::i' ,1"" T _1. !,:,:,f.'úiÉ' :r1^'" T'"' lI". JIne.i'..i i\j-Ú"Át A!". :' l!\H2 l.
i'\' .:· · ,- '., ,.,,, ., .,·,, .i''T']{., i'. Ft\"" i" t" \Á"O O T t'- s -·
l" ll,ri á't. I/_'.1 '"·,Í,";'.zt' :.'_" ' "'--,. , ::,' L .~LL:;.t: t: IN tt, ." n::
.-' .:.'... : " \.' :_' !"..'i r ' .·.' ' " ' "r .' t..} ac¿'?!l'tn"lc)'j: i{c' ¿: níaximat t"j-'";j t--.'; S"J;j't'í. .
-. .. . ..... .- - . .
i:
.' 'L
":¿j;",';;;. _: z>;"" L? '7e'íí!!"!j Eit,.'? mnment E'es.::"Q?¢Tc)'" A.ác: ""é9" k
:
m·
}. fh
i'
:) E-i""t £· :" :2- "-2 '-.' ·: _c'" r". ;":'"' !",g¿y.: :;E:'"' ) ! E: ' 1t: hi =Ácid'"eíi.s ot ¿: "n' I-'erá. .!'
_j: _Z=¿=" .-, -,.._ _.......,_,_ _
__:.
T.:i:·' '¿ijg: .-j!,'j 1_lÁ',""'} .U: ,- ,¿';j"j'"jj,-. É'j ,¿ ;i-í. i'!t -m4 u'pe' !'.17\"ir¢.'nl1!t ir I)e·j,:_;" ij".'."'."
!mecn-", ,;, U).. }' I': -:7 '·. J: ·.Z tí'li: .. .i-:...: j"j¿- '" i- ÍHUF re !y("Ti thü (_ \-jn]: ií¿"z!][": Í'!1)cg s: :-,' !" 1i}">u" i--
inµ tía- t:""". ::'-:c.: L'j- Ii U' .: .' a¡'j' '}¿-Ii7 lot: í'r(jµI"aiiLg' típcm L-: h.eL'U[ iui!. Uin> tü'ií-'í jo: "
Riác l"ui- 'Jl_.r-j tcj TL·i1¿': :",\" ¿i.-LlL: ;rcg Ú^n íz'í'i adcjreg)s 2t anv titne.
P""""""" "" """ """"" I:
!1 Func trorí i52 Parse File Name i
i'—-— j
j; :,
li Erner: C=152 (function number))) Exi t: A=Number of "?" in tr..ttj,
;i DE =Pcnt"ter- tc dest FCB. li DL =pc)iFts to celimite'" ii
t' pi
:' DP1A ----> Hart par3e strmg :j FCB+15 will be L' it parse Ob: .i:
rb
li ii offh it errors occurxed. i)
ip
i:" -" .__t: __li if
"!ti" tti'i:"t iü"" ;j¡..\" !"'t. li ". -.-! 'L .' A"el}ia uZ.3í-!!S i ihrar': rout iT!eg. in ap,!o: "z 7"¿]'""-} :·. :
1-
n""'"' ";j;j.. ¡'i" /-_i¿,'¿ l' co: sC-¢"l!--; cl\" s,: íia iit': "arr! icat íons pr(jµra!l: °, .?!}!" IR liy
CÜllif' 'í._:,iZ ".'. :Í- !"'. )·fí i..";.4 PÁ!>l.' ::pc 'i!"icarions.
14 "-·'
ZSDQS Version 2H/? EI!CF
8.0 ZCPR Version 4.
7.4().ZRL is aconsol idae ton Qt" ?CPk34 and many of' the' K( i' t"eaturez, cc\rlÍRi: )n jr }j}
u.sc'. modified hr the need to bank as much of the coníníand Processor as pcjss,i-
bl e.When Z40 is used in aFul Iv-banked system, you way nct neeci much of, or
any Resident Command Processor wi th your system. Z4Cl reíys on ZSDOSZ and will
NOT work without it since the Command Line Parser and disk free space calcula-
tions have been retucn"ecl in favor of' ZSDOSZ services. Addit lona !1\", the' pron}r'E
iinc displays the time-' and \'\'ij }oñi\' function correctly if" he 7SL)(-)S2 clock. i:',
enabled. ("onírrtents on hovt" these neis" S\'steni corííponent.s work wcnj id be appreciat-
ecl .
More complete documenuítion is rro\"iclL-d in the-' Z40.HLP tlíes incluáüc! "n íth t!ít
dis'triMñicm. ciiskE¿íL?R. anti ali"t of act ive functions is a\'ai]?t;e í\iíij the' H
command at t)"w pro!íí;'[ -:"o re,'id tM on-: ine helj"' iAes. use Hi:t.FúCOj! ara! !ah!e
t\"i" cio"\','ñ l cjFtCj iti;-' t" l"OiX any 2-XQcit' .
14-4
B/P EllOS GL.C!SS4RY
Appl ication Programs. In cont ríist to utility programs lstti :,u'rQ ic'_íi j'í!'
m" :"Tá!"t $or applications arc larger rro"'1"aE[~ "jüc» a" \'"o"'"j p7"ücc' sc: :u '.i"hic't
tunctior", interactiuÑy \1!Úl t!"jc uú.t"i".
Bum FlaR ic: hi sR: '.)r}crat inµ Symü: ní. 'I'M machzne-inclependen: ,íj\j'j umhÜ ¿i"
p!"c)c'e,ss(jr-depcíríde!]F ,p:"c)?ra7¡] whi ch controls the interface between a?plic-at icc""
programs ant! the níach iñe-dt-pendent haI"{É\\'¿ír<-- dt"vi ces. such a.-, p: "in::ei" q.di :"j
cir l\"c-' s .clc)cks. et c.!1 ¿.Jsü é:-'táhl ishé"í the conct';: n O! iiie> cm rr:e.:iií'"! ¿u.!
cont ro lxthe-" c)perj iri '. rf"¿z'l;"i'_". ',','ririm ¿jj]q' cicjsin'" of ",uc'7í ct"\n7truccs.
BGi i .FsackGrcni: -O iÉ- i' i;ij'g-y l."?: .}'·P'e1"t€"L"í Syxr uris .awjndQ'n'in,£' rasÉ"-g.\','itcj"i!¡""!.'
syueni Iq!" t'l-'/'d [};<: .. r.- '-\'j i!_, MtüX l-j]" lt:\3t di>ks.
E:'Gü .j':j3i:'i2i'2í /'(),-: ?:"·::í m: s..íc"ní. Yac'h me-dependei",t routine's \i'!?ic'}"! p¿·: "f:):":
a
Á'"'"t: .':i I".'! !j"'"": j. 't!--'.^¿ c(.)j"tr()} such ai, s£'n¿}:ng p-rí¿¡ T"c'(-E'l\_in c'!í ir:,':"z- :'- .
1i"it- ['¢.]t!'qí.)}. .:t'm_É'n;·' á!:jwí"it i'"í} to "list cÚi\"'jí'·. É·tc.
t':i1.iiitx: '\' t;j¿';",, .·'.1} r_·|¿'n.{'T}? v,!'itc: hcan Íl?l\_t cuúí" ¿é J-,.!l) It ü'n ()1" O: i;'-,z","t'¿ .
E7 iMuÍ). .'G-f} ;jj ]", '." (Í' µi !" j1>í' i'."} !u'}"Úqc!: 'í oj" map !:jj",2£' ait"a, ·üé' Mt'..' .
!t"!t(."í: "}}:'.í m'á! iu ." :_c.?1'"ú' 'l':,;"t. .
Boot '"'.- r·. :l" :-, (: 'u!' u"' 9'Un: Ult' gt-ciu: f?2'-(. t.; :. ';,';, "·' ::.t..':':" ,
"''.'" ' ·'1- - .;.,,- ":.·· l,,
cLr' J,', ' -t\''ít'tl [É"i ::I./Á. :.\·i,'.:.'.) ; pa", l:_'. .i'a'. E: .4'" ' :·-!'-.: J·- -.:.:.'C.
· r
1;:,:. '\){l;"\ t' ;";.1tt·:<i" ~:tIj .trj (" C.(:: "! l,:' ;,'. , !"\'}""f,':j:" .
fiytt: - ' ::t"'r ;"'ir', (""'''
()í"i .:·, t/.,jj,,,f r,,! ',... -'r. ;;. .2!l "t .i.,í;j,.','_'-- 1t": 'j ;;-'Cr rlf: ':(.)",',!. l"j¿;.!|{: j,t, ::·". : l'
Cz: '·. i' ,·-, .: i1jjj¿ :;"J k'- é;' ,'-.t"' ."1!í'- g:"'í-t ,{jy O!' tt't-' olY"T",iti!]F s3y.': :€'i. IÁ^
:".!"". !" i'i.::-, .' ''.. oek: á. É'.j' ¿Gi{i ci',Mu é\t?cjiiL""· then, ciigccíi\" or imác!" {í·-í;-.í·: "-
L
t:'./ .|2' .nu": -':ü 'lC.: ':l ti :
>É- t'c.j" e': t:ct:t Ic)';. ñ: ('l i-' m'," t'ú (j'."t'i"',\":"!tt¿T} I)'" 4|'j"; ':'.
E:'. :.,FÍl' :gi"-:.-' j (3¿.','.1(--. !"/:J T i" '-' '\i¿j i'": íj(')¿^jZ "Íur]"'2i("j: íc't t!íc |'"('j" .
Check¶|-!íq ..-",:"' \": ,l!it- ',rj": j¿ I! í-i"unmz ilcá!ij" >un};!!a!"]7e"| t:"íc c'[jn[t"[2z'b Üt ¿! '<l' ''. t. .
O: !íN ;jy.;j ,' ,:
(:.'¿.l ,Ü'k"-,. anc íc-.t: ju) c:l?tj'c'í: tht- cu'"rem c(7: ?"¿cn:.£ li:';" l. :j"jy"'· .
Clock lj'river. ..', y-[.)j u\'a1"c' iF;!: bí' tween a\i_m- háñkéct 2' ¶!MS'. and the cli.3c :. "
\'ól!!' 5\"SU-: ',. Tjl- t: !O:U cl rU\"€- :" ai io\/\"jt ZS!XF, and iIs ut ii it iú- tí". rt ..' i'
(- lúe'! wIne'!: j·- !íc\;"ní¿¿: !\" in?ic·: "c'ut it": the Es,/P Tsicsi.
Ccxurnand Scri pt .gLL")njz't iEi':'s cc: !lc' "i sitnp!y scripts, comíiancl scri pt :-,i l !ü",' ,"t.j.; "·
CI"E'(ÜC: a"1I2µ'!¿' c'c)ni!Í"l: iUc¢ which í":s'-ies other con1n]ant_}?) to pe: "!oníi 5i un¡c}i: :'. :·'í'! c
kC't 1ot!\.. ':t',u: subini tfiles :"ú"'-' gYYj' k tntl O!' c'oni!}¡anc1 scripí i'aniiiia' ::". ,.2'
Ci'/)·l U3C·l""., ,_'._'! ' alsü ofit';": .ñtCL'E scphísucated types. of' sci"j ;"t ssuOí .'-
aliases and command files (t-' .g..ALIAS. CMD) .
i45
GLOSSARY B,'P E!oíí
DateStamper. ,\ s(")Í"[iq'a3e packaµc' Cié\"f-- lopeí! by Pni'ú"t<1c·'ct S':sr:üi:-. [t-j ¿z: ío'.',
tííne and date sta!rlr'iil,L' Of' fjjgg: ."!"ht-' ftotjt Systeni 'is' es an externa i]Tíc}(j!l!e in
the fi le LDLlS.(X)!4l tc\ iIÍ'¡r!errÍert[ i)¿itesía!!"lt"e1". vi'hi tú Zsuus a)-ítÜn'La: ífÁ_i ' :':>'.ú'-
ports this stamping rrie[hÜ(: j. !)a[estanÍp€^r is unique among f'i le 5taL?!;)t']"y» foí
microcompurers for two reasons: first, it nlair][a!ns. all file síamps í'."jthi1? i
f'i le: second, it rüaintains startíps fur create. access, and modify tiRK"/d¿: ?€' f'cíl"
each file.
DDT. Dynam ic Debugµ'im Joo! .-"\ utilirí' distrihurúd v\'itñ 'É'/')j 2.2 ',':nó-h c¿_:
á
clispl á\". cl isas.semblc. o!" al tc'!" di sÉ: f"j les or areas of' F}ewíc"'ry u:'. in; üpco: ies or
hexade cinía iva lue s: .
COS. bisk (.'per¿A.tin? Sy::te|lj. ten used term Íot ihc· Mus, hr', jzenera! 1\'
refer: -: tcj the a?,zregatÚ C:!("l'j'. Éijc'3 and L!!OSí.
LX)sr)i SÉ'.. ;-'1 S(.)!í¡\'¿.: "'j ;")C"iC!q.:¿L| :J"lÁÍ !'!ii'%l-'L·rje¿'r bystenis. "u'hich ¿i; !c: ",i"- 'iSl ri í_j;
("t',,/ ": an'i cc)|},|)¿z[.il']c ·¿"'.-'.';'.'jZitt! j. c\' "\í i" ,tt arN re-: :ci t" iie'> directly ic) arn-' lrc:,,
'7ta: jcj¿iI"(-l 5- ", j-i' 4(.)-'g: "¿"ij'} :'(:Li!:·i£-!7it"ic'ci. !,)o]-ii).it: -!)¿-!'}Á[t\" y$-I)(-.)> tC)l"l]'3: }1 (i}j.rL"1."L·: ·'.
I!'.", i:-, tt1£- y.¿F'.;"í!.71"(l 'U'y"/·"" /"i fo!"TÁ:L '.:"á3'cÉ ír: ]j-s"d-j'N compt"it Íb!t,' cc)1i!7'i!tU: ".
FCÜ. F: U" (."'tjntrc: !!'.!t'C"". .', '-'r,m!.i:"jrrieniory structure u>;t: :i ')\' l-i'/'í' kilt :_'. nj.
p:Uthlt' (?;)¿:cl[|!'!, :."'-.T s';j"· Lu jL'Z¿:t¿:i·:' Ai.-.;- Íl!L Qrl£7'it!o1")'.
Fi le Attribures. ,-'·Ü\"} ;:l".:-j'F'; ¿l file attributes, !"ey.e!"\"eci tits' µ{i.)!"ÚC' ¿dl\j7!!'
\citÁ i't)t-' Mt.lítt: ii, c:í->)· d: i"ct Ll-Ñ f:j;- í'z'lítcií contrm ño"\" tú,tj' i1le" [¿tu ,í{: C{:-.-,Í)r...
-.
Heyadec1ga? ..'i h,'z",c·-- i:h{!ü.: é:)¿-:_ !}l" s\":-7 ¿'fi; ccmm".í 1n? c'T tñt" !"lurlll")L ':" j('-' .' á'·
k-ztt';'> ,\,-j ,(.}iír: I2 ue-'..! ííj rU!3rt: >.c'í\ byt':'s ;jy, [\'c(" cñgit", ',{'('/ te"' l i ;. '. :- -t'
He-\"aát'c jñ)sí l!}ú|"ii!_}7: f·- i'-. Ijf,|-íÁj i)" jt'l'!'C"Ñ't: TC"j by suf i' i:ciny the nUií}b(."" \', .t" .í!" !'
u:-in "(ñli' .
JGFJYTE .]nT"'Ü'/'()¿i: r"i i' "tf '4 '"l· E'-",-r·,i É-j\"t/"' ar ic\cát I.")"' ": t,',,'j¿ -·-í ,.li ·· :'Ó
yc','!: }{.' \i-','"\É gjí;;.".. ', .. l" -": 1 'il' C'. ;'í]"'"-'í !t.!Ü Üi.ll fj-.'í r?t: 'T.",',"i'€?}? ctc\" ict-"". y ·.-'.': I! ::'· 2c' 2"l"u ": -
!!¿,l: -\ :zn'"l y"n": :c:"'-.
K. L"s&zÑ\" l"tÑí'::, ;íí !|il()|í: ,1.L c":
!!(L!4 i;.i !Üt!í P(")'íf: l"í hytt-': -.
P2íj. !':'!)ü°, ;j¿j[ t-" )t(¿3"l!".· .:^'.ú a! tt-'rnat i"\"c- füníi oí' fi le 3ían}!)in: ?"used ii"t ílA.! it'!,
.
TIru£zgt-' sf'9ñoS. l'£ú s,[an!í)-K ai"é." cL)[í|p¿lL}!)]e wirh C:I'/M Plus ttrím-' aria dau-'
staR1!j'). 'I'his Ícrniaí is, surp(_)1"tc-1: jin aIÉ/F' boot systezi vtith the LL'!'2b.C(t'!
St artíp niod:iIt: .am" auíütt: zt ici_: l1\" in /Si)C/Sj.
RAM. Rznci()ril !\cc€'5s, !'Y!€!7!í}r} .A') c)pp'-7: '}e(j to Read Oñi\" Menioíy (Rí}: Yíj "tl"íc' árcui cE
ac'on'l!")uter 'yí níeíiiory t\ijicíj inay he both re.ící froni and \\'Í'iít€"ñ to.
RSX. Res,ident Sys"teni L:ctension. Aprograní rúoduie con1pt\"ins2 \4 itíz a±,: :anciaíut
developed by F'lu*Pc'r!ect Sy>ñeniu, 1"c_)t exnend inp thí^ fíncr ional it\" oí" aC!-'/'v{ 2. _'
coinpat iblt-' ():)¿r¿it ínµ' b:\"s"Le'Ri. Ute nío:!ulc' must be íoa'-ic'ci at the top C!" U!e·
Trans it'ní 1'!"(js-' !"á: ií ,·\j"t-: "í. ¿¿1",'_ ijí. ;c-":
"i the' (.'(j!2sj It: (.'orr: nl:inc: F-'r'."'cÜ'sg,\j]".
System !"ron',r'"' -i!é: · t :ín,, '1.'¿;" A> !"!"c)[!í!: z\'\'í: :ch. appt'ars 8: )t")n at'íei" 1'l',"¿ CL"::}í;'..ZlS7 :"
aiu' sAi1"ltm uj"'.
14€1
é/P BIOS GLOSSARY
TPA. Trans lent !"'rograiti Area. That adciressahle memory space L1"c!r! the j(_)wc'6!
aval fable adctres'i [(i the í_í]glje: qt aval !ah!e address. Usuaí iy thi:', ertencb Ircwi
Í()()H tcj the hase oí' rhc" HIK'S (ássannng that the Conimand Processor is overwrit-
ten). or the base of" the lowest ías: e.
Uti Iity Programs. in contrast to application programs (see) ,ut iiity prog.raIl't'1
or utilities are shürter proµrams, such as directory proprmis, which accept a
single conírnand front the user.
Wheel Byte. Taking its name Írcuü the colloquial "big Wheel." the Wheel bytu
controls securi U' under ZCPR and ZSiX)S. When the byte is set to anon-zerc'
value. the user has "Wheel status" and may execute commands unava ilahit '. :-\
other users.
Word. In tht' cotrmutt'r ccvite": t. afixed number c:.t' bytc'sz. Por g- tnílcí"c\c()!: '-·
puters. awoi"ci lX ust: cj i}" ¿'At' bytes. or itj hits.
Z-System. An ope: "minµ Sí\"¶télíí which coninletelv rq"iaces (:P/""tl bu Sn-""' uu: m'
7.'"µj i'cjí" i'i r¿1j !teú.e'a: "ch' scomn}anc] processor anti Z5Á)OS for L"ig! rat !-:L--.¿·¿_ti"{:. '." ".
LilS!F: cy'c'rm. U"j;2 systeit. ZCPR and ZÑ.y")s compleniünt qt?ú armt her ¿["j S:
t."U :',: )'.'.ay
to enhancc pc1'tc)r[H.7:nct-.
ZCPR .zu) (.'(3R,r,,.l!"í("' i-'! í}L't::--"-.(}|' l·:t:!"):{1':e[|tt-Í]i. .C)I'igina|iy C!': '"\"C|L1í"té. !,,-, :
.g r'.'ñ-i :'
l' i' iq;" i: o!" iñt 5í)\j¿ .. !jr|teI"L->..,7, í,.jj Q'jt'C tON" MicIc)c["j¡h|)u[el'.-j iS!{._;,/"4: }.Ij)l 'L u-'i i!"1·- C
4
by 'Uchizrj 'ü:"in 2(') :'". It \'t'!""> jtjµ ;¿ .(i a:"íc J¿_¿;. Ñzµzt- tO \'e: "> l(7n:3'.-i ,","-u! "i ..- .
li IL ..1- it) "llí ''" 1',·'- j'.jú",": :'"::)'L' iiJt9 lllkl U-" uSrinFsreci fléí! ' :\?'.i!:¿"{"i {_ {jL?1r!lQí". l:,", '·\ <' '-, .
}G; !;'j.',! }' )j-, .ii:'- '. (..i t!. i"i;;'."jjt' ii:"t '\íi sro>.cú t-c'LjlEr¿: tg) ,t' }4¿' !tie- -Lit. :7t t: ', !"'."
":\'oin: ',' 7j} I) 'I'"'"'e:gi"z'r/T ''fs J ()k," T,
14 .'
Bibliography B/P E'f(")S
Thi snianu,"i] is no'- iñtt: ñQÚc as, ¿i cotúp!ete rel'ert'ncc" to ZN) asse'nbi yjanL"Íj¿: gL .
C"'!"'/P: .o!" ZCl'íz cy"í'rating qy.3{elTis,. Since niany bocN": have hc'en written orí them.'
topi c-s we inc' !ucit^ iierú oí': !y those' \\"é havt-' found rnosrt us.út \j} .The sou Icé". i"1
t'acjí cateporr are listed in order of' difficulty.
1. Information on CP/M
Waite, Mitchel! and I'ohert I-afore. Sou! Qt CP/Y: _How to Use the Hídder'- Povrer
oÍ' \o,ur ü,j/M Sy,st,wn. lndianapoli s: Howard Msams Co. .l'jS3. We ji
written basic introduction to the principles and design of CP/3'2 and thc
use of S'ü:'/) assembly language. Many programmiñfz, examples and severa i
useful appendices included. Illustrated, appendices, index". 391 pi).
john3(jn-l-ai rci .Áñci\". The Proszranimer 's CP/M Handbook. tserkL'!e\": ()Sljr)rnC'/
Mc?rav\'-F[i ] ! .US3. !liFhly detiií lt:cl, complete de.scripticm ct the strm'-
tute' O! Cf'/'\i ft'!" I")r(j,gl".a[ltn]¿'l"s,. Inst ruct iüm on patchiñ?, desigr'im art
debu;zszing al'íé\í ('}',/"\l s"ybtÚl¡t. (onq'l tne" c: ·:ariipi ctí!(±i sotjrcú inc í'tviü":
.
1ijL'qt!"í"iTe(j. arT'<:n(ílct'" .!l]¿jt': \:. sc'! p!'.
l)j>"il¿?} kL'.sé-'¿t1"L'!"l. t;i',"y (1}t¿'7"¿'iL i,rí'µ" 3ysnc!'l ya!]lla|. .Pací! ic Grove, (. al i!'o: im
i'if'iG,; í1:
L'"ea!c'!!. j '-:: .Z .()i"I.2!n¿i1 ck)currier?tation by ljipi tal l·?e4earcl}.
d'£\"¿'![)!í)L'r: -. cU (i'/úC. (-one 1"a? anc! auchcri tat i\"c', anti technica i ! \" i' .:7--
tc-1\ ,tnis sn-iidt i: nía in !\" (")" um..' as a Tt'Í"erénc'e guide ior th(_)q( "Yi1"éc)
al ready t,,ícÁ .airm ':
'!"/;'j. in '|u{"jÚ>. ccn"éTá2ú oí' the' orí "i n:"t1 '"p/)·j Í"ft lll-
t1e'3 c:nci ab;.t-!C'[¿"t: t3xan}nlt- fítt)$-. i!lu: -.t rated. appendicer. íntie" .L9'J
rr' ·
2. Lpó Assembl yL-amuage
Yo¶1e I(()¡"I"u): '¿it imí. ¡-'j"ü;' i",üi,!!, :'ría!1l-: ¿"¿itor ;z: m::f_ic,TQc"()t}lljllte[". i--'ur)!!c¿[[i(7I_i
Xl). UK Cí$>. ,\1()g"!'!'-k {.'Ol'i"'. .i'-' ".The "F$-i ble" of ZSÚ assertib iy lan9ua2e
4
í}T'c').gI"íznl¡l'!j'2? mien íletai itui dt'>c: riDt ions arid exanípie-r eu·ich ()ri": .)(!é.. .
!>UiC'j: ÁFNü"Icá. l.i l. iÉi)í)jlS() ti-fO tElíszh Mtestj"ation CMÜS }|]c}"op}"'-jcegA: ':" Míti:
F$(:)C|:k .Puhi lcí'iti()[? #[.1' .úitachi Arhe1"íca. Ltci ..l'A": :' .'Íñt? TzÑ é."-I("::]C".'
bOuk í'Oi" Ü)€· t)4¡hU. !\"O prLjg1"¿íníi|: Ln,g exan]Ijl€'µ. but very dc'tailt"d ii:-.: -
ings o!' all lnrtruc[iQn"...
Zakñ ,Rodnar. Pr(j2.I"í±l]it!!in2 ttíc· zm, Iterk: eiev: SYF.ILÑ. inc. ,l'jtjn Righlv
cietí- iltd inforníat ion about every aspect of the ZSÜ jüicroprocessc/r and
zm asseDÍtgi\' íanguagt". Covered are basi cprograniniing concepts. ZZM)
ha rchiart organ izat ion. programníing. addressing. and l/O tecñríiques.
Programming exalI}pIe.b are included. and over 2Ó(J pages of inf'ormat ion
are devoted to the ZSO instruction set itself. Illustrated. appen-
dices. index. 624 pp.
148
B/P BIOS Eñ5liography
3. lnformation on ZCPR, ZSDOS, the Z-System and Accessories
MoT?en. Bruce and Jar Saszc- .The Z-Svstent L:ser sGu_idc;. An introduct ic-'n to
Z-System tor the less technical user.
Sasze, jav. The ZCPR 3.3 User's Guide. Manual for ZCPR version 3.3, includirie
many examples of how the features of Z-System can be put to work.
Extended command processing and security features are highiiµhted.
Conn. Richard. ZCPR3: The M.a.nua_l_. New York: New York Zoetrope. 19SS. 'ñíc-
"bible" of ZCPR3, written by ZCPR's origina! author. Much inforníat ion
is now out of daté-". but still very useful. Illustrated. index, 351 pp.
Conn ,Richa rd .zcpr3: _jFhí- Librarieq Manual for the SYSL!8. 2j3Líh, and \.j.;g.
assenií'ly Ianguagt" Iit.-a"aries. which al Ic)\'\" adranced ZCPR j p1"oµraií}l!jcj :- u)
creutt' thc i]' o'.'.: z 7-System program.
Mitchcll. Bi"iíiger. FktcÉ: µ'rouncÍejr i__i .Ic!yl]\ii1(7. C,'\. 1'F)(.. {A",-¿¿ilaí)}(' fjoñ/
!"'lu'"Perft'ct Syxtt: ñí> anti othc'rs: ). K: -tnua l f"o!" Backµ rourí.!c riiiñj Iu':lc .
níany aíí\¿in¿'c(] [c'cr,7]iciueb ant! adescription of tit: !1Uu*Perl'ect RS)·i
st¿incl¿il'"¢: ].
!3íri' :'. H: l'"l: ('u'. ' i j ! .'""z!" 'rcn antj '\'p'j lson. ("'ars(j: ?, 7SDC)3 l.C' L4c1'"" güici'. .
!C: ,.:"' .Ht'trii lc'ci ["6ú'í" in jtl"ú:jt ioní for the !:L:)n-banÉ:ec! \"cj">icnií of ZÑXE .
along ',iith (1t-!¿ii|c:!:"eí't'}"c':}c'L'>. Thig3 is amust ii" \'ou CÍ.? not ñk"jt' W)
a
jj.7 tlí'· !"ú-ínted 7sñi: u,'.
Kc)'.'. l' j" .!ii-í1"{)l{}: {"()[}"i:]. ('íí!l:c' ron an':! \\' j ] ".cm .carson. F'roµra!7in!cr 'J-i :¿:¿|r}ua! !".'1
Z,SFjC".)3 l,i. U")'!s.;. »t'táiís data areaú.. intcrfací-'s. and pro?raiitn¡¡I],£'
cxalllp!¿'K fm" "\'I"izi]l?' i);"o.L'_: "¿lR')j> t'ar sy: 3tÚ!1is running thc ZS[")'.")S sk:\":··.IL':j .
149
Bios Function Reference Appendix 1
Numt?er Fcn Name Input Parameters Returned Values Uses
OCBCOT Neme None All Regs
1WBCC'T None None All Regs
2CONST None A=FFH if Ready AF
A=0OH if No Char
3CONIN None A=Char from CON: AF
(masked per ICFG)
4CONOUT C=Char to send None AF
(masked per IC'FG)
5LIST C=Char to send None AF
(masked per ICFG)
6AUXOUT C=Char tc Send None AF
(masked per ICFG)
7AU)CN None A=Char trom AUX: AF
(masked per ICFG)
8HCNE None <Status Code >All Regs
9SELDSK C=F'rive (O=A..15=P) HL=Disk Param Hci: " Adcir Ail ReS3
HL=O if No Drive
1C' SETTRL 8G=Track Nutnbe'" None None
11 SETSE'3 BC=Sec.tc)!" Number Neme Ñ3!\é
1 Z SETEMÁ, E3C=394A Acdress None None
13READ None <Statm Cckje >/'.1? Pegs
14 W2!TZ C=w'"ite Type <Status CoGe >Ali Regs-
(Cj=L'na' io.::áteíj, 1=LY rectory, Force Write)
15 LISTST i\tjj-€ A=FF\ it PTR ReacN AT
A=O0H it PTR ÑCft Ready
1 S SU.TF?X £<>Lo¢ñcaí Secto:"eFh_=Physica1 Sector #Ail F:eC£·
DE=Trans?ation Tbl Addi"
--------- <<< End ot C'L'Y AZ' Vectcús >>>
1 7 CCNC'ST Noí""r, A=C)FFH if COK: :Reaay Al'
A=0CH if CON: Busy
1" A'J>JST Ñoñ£ A=0FFH if AUXin Ready A7
A=0QH if N(? Char
19 AUXSST None A=QFM if AUXout Ready AF
A=0OH if AUXout E3us'v
2Cl DEVTCL k: me HL--> Char IQ Table HL
21 DEVINI None None All Reccs
22 DRVTBL None HL--> DPH Table if Ok HL
(O entries for No Orv)
23 <Reserved tot" MULTIO>
24 FLUSH None <Status Code >All Regs
25 MOVE HL=Source Addr None All Regs
OE=3est Addr
8C=Length to move
26 TIMÉ CM(Read.), C=1(Set) A=1 if Ok, A=C) if Errs All Regs
0"--> lS-byte Time E=Orig 6th buffer byte
D=1/1Oth Secs (Reaci)
27 SÉLM>', A=8anl< Number None \'oríe
2,g, SFTEl?¿p: , A=6ani Numt"e l" None Nct)e
150
Appendix 1Bios Function Reference
29 XMOVE C.=Source Bank #None Notz.e
8=Dest Bank #
----- <<< Encl of C9/M 3"Type" Vector3 >>>
3Cl RETBIO None A=8ios Version #A,BC,DE,HL
BC--> Bios jump Table
DE--> Config Data Area
HL--> Device Config Table
31 DIFEUCJ <-- See details below for Direct Device IQ -->
8=Driver Type <see tab1e> <see tab1E7: ·
C=Function #
32 STFARC' A=8ank Number None Neme
33 FRJP HL=Dest Address ?? ??
34 FRCt-R HL=Return Aciciress ?? None
35 7R(37TE3 HL--> Byte to Get A=8yte at (C: AL) AF
C=Banl': Number
3.C 9RGFT',-/ :-1L---> Word tfj Get DE=Worci at (C: EL) F,DE
C=8arjt NuirLei"
37 FRPL'TÉ Hl--> Byte Dest None F
C=3ani-: NurrfF)er (A saved to {C: Hj)
A=8yte to Put
:>FqR!jT\',' HL >Wor¿ Ijeí.t None l'
C=Bank Number (DE saved to (C.:HL))
1E=Wot-d to Put
6'F' RITME"! None A=C'um_ent Barík Number a.""
==== FLOPP't DISK SUBFUN'GTIONS (FUnct7o?2 31 ) --------------------=' áá
': ' STMCCT A=C' {Double 3et"s) None AP
CFPh' fSingK' Ce-as.)
C=': i; Futitcn #)
8"1 (F]CPF': y.l
1"t"" "" A='F {Ncrrr,a1 Speed :' None AF'
QF7H fHi capable}
C'=C' {McEor cm Cant )
ÓFFE (Motor Contr)
e=c: (Hard), 1(8") Neme /\"
Z(5.25"), 3(3.5")
C=1 (Subfcn #)
8=1 (Floppy)
2STHDR',' A=Unit (80,1) None A"
Head (D2)
C=2 (Subfcn #)
B=l (Floppy)
3STSECT A=Phys Track # None AF
0=0 (128 Sctrs.. None AF
3=1024 Sctrs)
E=Last Sector #
C=3 (Subfcn #)
8=1 {Fiop?y)
151
Bios Function Reference Appendix 1
4SPEC A=Step rate in mS None AF
(87=1 for 8" Orv)
D=Head Unload in mS
E=Head Load in mS
C=4 (Subfcn #)
8=1 (Floppy)
5RECAL C=5 (Subfcn #) <Status Code >AF
8=1 (Floppy)
6SEEK A=0esired Trk #
D=0FFH Verify, <Status Code >AF
E=C' (Single-step)
<>0 (Double-step)
C-=5 (Subfcn #)
8=1 (F1op>')
7SREAD HL--> Eead Eluffeu <Status Code >,ü.f, HI
C=7 (Sucfcn #.)
8=1 (Floppy)'
8SWRITC HL--> \','rite Butte: "<Status Code >Al' ,i-: :_
C""'9 (Subfc.n ¥\
£3=1 (F1OP?: '";
9READIF' cu (Subfcü #] <Status Code >AF
Bu (F1op3y)
j¿;t EETDS.T C=1'¿) (SijttC.'j #] A=Status Byte AF, SC ,E!-
É3--É 'F;opr'y) E3C--Ccntro11er Type
HL--> Status Byte
11Ft/TTR}¿ hL-- >Fc.rruat Data <Status Code >Ali F{eg3
D=¡-..GT: "S/Trit
F--Gar 3évte Cnu: "t
C=11 (St'7tu"' ?]
e=i ("lcjF!9j '
------'- liÁEC" r':»' S'JBF"{j{\¿CTlOt¢S iFunct ion 31 }-----""----------- ---"-- ---- -- -
':p HDVA'_S CQ£---> 512 byte DuÍÍ A=# Bytes in CDC E" ,j--|j
C=C' (, S.jt'tcñ E,)
E3=1' 1F!ará'
1H1)SLC'T A=Deváce Byte A=Phyñca1 Device EN F.,P
C.=l ',Subfcn #:'
8=2 (karC)
2DOSCSí DE--> Ccnnd Desc É31Y. H=Message Byte Al }Regé'
A=C' tÑj Write r)ata:'L=Status Byte
C=? fSubfcn #:' A=Masked Status Byte
Ej=Z (Hard)
Status Cede: A=C', Zero Set (Z) if Operation successfully performed
A<> g, Zero Clear (NZ) if Errors occureí in Operation
1:jZ'
Appendix 2ZSDO32 Function Reference
Number Function name Input Parameters Returned Va1,ues
O E3OCít Mne None
iConsole Input None A=Character
2Console Output E=Characte rA=OOH
3Reader Input None A=Character
4Punch Output E=Character A=0OH
5List Output E=Character A=0OH
6Direct Console I/O E=0FFH (In) A=1nput Character
E=0FEH (In) A=Conso7e Status"
E=0FDH (In) A=1nput Character
E=0C)H. .OFCH (Out) A=O0H
7Get I/C' Byte None A=I,/O Byte (OOG3H)
8 Set I,/Ci Byte E=T/O Byte A=0C)H
9Print String DE=Address Strinc A=OOÉ
1C' Rea.í "O!2¿.3]€ l3uVer DE=Adciress Butfer A=0GH
i1 GfCt Ccms.: jié Stutín None A='jC'H =N3 cñarac-te"
A=O1H =Cheu_. Ell"ese72t
1:'Get Ver£iolz Nljflet None A=Vereion Number (22: ')
1 2 Reset Ris! System None A=C)0H No i' gor, A
A=FFA $'.* on A
1Lj Select IÁ£-Í-. E"Disl', Nurnbe" A=íj0ri No $'." CIé
A=FFF' $:*,*' 7i le
ic O?el"; u":
eDE=Ád{jl"es£ of fq3 A=C' rectory CCjJ,?
1íj Dose Fúle Eé=Address t:·f FCF. A=D' !-e¿t£: r"y CcÚe'
i/Sem"ck fcj'" U/"éí ['F-Ad¢ire3£ of FCB A--DJ rectc':"y Coc9
Search fc:"' tue: NGE=r-,jlZ!"-e£E of FC'?i /'.=-t'i u'ctar yCode'
'CÍ)é'EtE 'iifZ E'r=Ad'd!"eE.E cjf fce: a=éf!"ot Cocie
2'3 ReaF Se: Ae!"ti?.' ?E=Ájdresí cr? FCB A=Reac!./\",""i C:o:ic
F1 '\',';_ ie Se?L!e: 'i7al 3E=Pdd!"e££ of FC9 A=ReeA,'\t'rtte Cckje
Z'PtáU: Fa fñ' 5'E=A.ddress of FCB A=tn t""ectccy Cc·de'
6gze7aí": E F"?e ljE=Adcj: "esc of FCC A=Erro: "C'c.: ia-
:" -: ?±r Lc.cum v'ectc"" Nor'e HL"aLoaqr) VéftÍj"
~'
üf GÉt C.:'"t"er:.t Dis' Neme A=Curí"erú D'si-.
2tl sÉt 3MA Á: ZCre3:.s DE=DM.'. ÁcÉrés3 A=oc"-i
2" Get AÉjDC. Aci·dre2± !·¿onE HL=Addt_ Al Íoc Vector"
22 Wíute Prúñect I'im· None A=ÜCH
Get RIC' Vector None HL=R/O Vector
3C/ Set File Attributes DE=Address FCB A=Error Code
31 Get D'ú3 Addres.s None HL=Address of DP6
32 Set/Get User Code E=FFH (Get )A=Use !" Numb<
E=Use: "Number (Set )A=0C'P
3F Read Random DE=Address of FCB A=Read/Wri te Code
34 Wri te Randorn DE=Address of FCB A=Read/Wri te Code
35 Compute File Size DE=Address of FCB A=Error Code
36 Set Random Record DE=Address of FCE3 A=0OH
?j Reset Mult Drive DE=Nask A=O0É
32 Not Imp 7emented
39 Get ti>: e¿ clisé: vector None HL=Fixec rÍ7sk Vectca
4C) \'""i te rá'~im' Oftf fj II DE=Adá" of FCE A=Read/\','r"i te Code
41-l¿ Not Imp iemented
153
ZSDC)S2 Function Reference Appendix 2
45 Set eñrcá" rrode E=FFE (Get) A=0OH
E=FEH (GÉt Err/Oisp.) A=cüu
E=O1H (Set ZSCÍJS) A=QOH
E='jÜH (Set CP/M) A=O0H
46 Return Free S3ace E=0isk Number A=Error Code
Space in DMA+0. .DMA"3
47 Get DMA address None HL=Current DMA Address
413 Get DOS &version None HdjOS type: "S"=ZSEC'S
"D"=ZD1XJS
L=BCD Version Number
49 Return ENV Address None HL=Env. Descri ptor Add: "
5ü-97 mt Imp7emented
Get time DE=Adciress to Put Time A=Time/0ate Ccjcié
99 Set tire DE=Address OÍ Time A=Time/0ate Code
1CU Get tiags None PL=F1 ags
1 '31 Set f1ía'qz. DEj=F1 ayi None
ICC Get file starnp 3E=AzjCZ" cjt FCb A=1"fw'e/3ate Cod; ,
Stág,g in DNA E3ufÍer'
iC: i Se' fúe staTlF\ DE='"C£ A.d.¿re£3, A=7ime/Date Code
Suiu? in DYA E3ui-tE-"-
1'34-1E·1 Not Implemented
15? F'arí,e "2ieSFfe': DF=FCE. Acit!ress, 4=h "'. CYt "": Ezt? i" ":
.z
£: .'-'jí":g zn ['yl ÁjL: fF€'" c)F"=-/: .:"j:¿" Of Ck'" irrt ch:
PCEi-'-15='- ":
t?a'"e.t: t;i.-
Gl"F}j zj' Fr: ""c'7_'\:¶..'
153-?51 Not lmp7emented
Di rectory Codem At-: )'? ), '3Éi,, :':i-:, C':Fi it No Crr¢-.!"
A=í"Fí- TfEt"f"Cú""
Error Codes: fjz{"n"¿ ir 7tC: E: roi" A=tFñ-: érrc,i"
Time/Oate Codes: '\= ii: t:vc eu": :v A=0l"H-i 7" errc""
Read/Wri te Codes: A=C9H tNo error
A=í)ih Fead => Emi oÍ File
Write =>Iñrectory Full
A=QZH Dis?: Full
A=C)32 Close Error in Random Record Read/write
A=CI4H Read Empty Record during Random Record Reaci
A=05H Directory FuV during Random Record Write
A=Ü6!R Record too big during Random Record Read/Write
Extended Error codes in Return Error Mode:
A=0FFH Extended Error Fla'q
H=C)1P-í OiÉü. i/'C' Er: "o'_ (8ac Sector :'
H=02>·! "Eaci On )y Üi sR
H=á7' \':'i" te ProtecreC Fi7e
H=í?4H Envelici Orjvé (Select)
1 cj.Fj
Appendix 3Dztespec 2ñcf File Stamp Formats
The universal starrp anci tune formats used by ZSDOS are Eased on pac'<ed E3Cí.'
digits. It was decided tnat these were the easiest format tor ze': 'appí ica-
tions. programs to work with, and were compatible with most real tirne clocks.
The format for the stamps and for the clock functions are identical to the
P7u*Perfec'i DateStamper's formats tor these functions.
Some file stamping torníats (for example CP/M Plus type) do not store all the
information preserú in the universal format to disk. In the case of CP/N P1ue
type stamps, there is no provision tor stamping the Last Access time. Tne
ZSCOS intertace rciUt]y|e¿" fii 1unimplemented fields in the stamp with C' whe: "
the Get Stamp fut": ction is used, and ignore the contents of the unused tie1azi
when the Put Stamp functicn is used.
Depenchng on the stam;: ing method selected, the forrrúit cit ttíe starrn3 gr, tP'e
chíl': may chtfet'" trorri t:'ce í-!'27ve!"sa1 format. These ditterenc-es auí eTTectjvE: )y'
hidden ft-oTli users t';,' z3lj: :s atíd the Sraíríp :"outinee so long as Z81ÚSi"s Ítx:c. )._6 ,,
ar"e ú3éCÍ to ¢eZ or ma": ipt.N:2e the stamrm
Time format (6 bytes packed BCD):
TI!¢' 7- '-·Í,·i ?c]79itE Cft yeúr
'..ñ!"Cf"u 13 assL'7et"jí for 7,'3 to 33, else 'i;' áse:-i""í-ci,'
TIME"""; -- rT!5)!'iT!-, li. . i:Q
7J'·;t- -r," -cía',' ji ..31j
"u :·C ':íYrj '" A'. .21' J
Ijyg"-' -niní'ie p:'. .s"-)
"T!Mi]+5 -se(": (:7c.: L' ..t "i
File Stamp format (15 bytes packed BCD):
[.N,/: -) '3 -Ct"ez..ze T7e'·ÍC' ttirst 5bvtes cl tim' 7ornj¿: t,'
V4A" E) -Acceá.s veici (:fi:"st I) bytes CT time forniaz]
2)y,l ¥"tl -Moc"tTy iúéig (iúrzz 5bytes c'" tune forrna'- ;i
153
INDEX F?/P BIOS
!'!TIME9.DÁT, 1C)ÉJ Disk Change. 133
Disk Parameter Clock (see DPá)
Absolute SYstem Modeá 108 Disk. Parameter Header (see DP'-i;
ALIAS, 69 Dos, 64, 146
ALIEN.DAT, 8"), 96 OosDisk, 141, 146
ALV, 47, 55, 57, 143 OPEl, 55, 83
Application Programs, 145 DPt-!, 29, 33, 52
Archive, 91 ,93
Assembly, 7, 10 EMULATE, 84, 96
AutoSize, 67 Envi ronment Descriptor,
Auxiliary, 28
FCB, 146
Bank number, 47, 70 File Attributes, 146
Banked Bios, g, 11 Files, 10
Base Page, 7Format, 83
Baud Rate, 72 Function G(Bics), 25
BOOS, 109, 145 Function 1(Elios), 26
BGii, 145 Function 2(Bios), 2'3
Eic'z", E·^m 1C'3, 145 Funct icm 3(8ios), 27
Bit Map, 145 Function 4(Ellos), 2?
Boot, 14 5 Funct7oA' 5(BiOS), zu
Boot traci: i, "i4, 1", 1¿. 7"1, '4E' Function 6(Bios.), 28
BP8,UI i?, fji Function 7(Bios,), 28
BPCkí a, it:', U, U), 93, 12 ·Function 8(Biozi, a-
BPDBÜG, VFunction g(!3ios), 29
EPFOFMAT ,gjj, '3'¿) Ft-mcUoa (Emosj, 29
6PS\CA?. i37 F'jncTicÍ?á 11 (Biosj, Z9
BPSYS'3E'¢, 16, i j,, ¿jg. 9'": .7'5j Fur,cticr U(Bios), 3Cj
BreaKpc'i rrt. íi'l .i:-Fu'icticm 13 (Ellos). 3""'
Byte, 14í Functiorz 14 (3iosi, 30
Fuucticm 15 (E3iosú. 32:
CCP, 1Cié ,1¿ '., Function 16 (BioZ.), 3")
Cha"acteí I'e" ,Cl .Si ,":Furtc"4on 1"/ íEños). :r
Checksum, É4!' Functiorí 18 (Eliosl, 3l
CIocr: ,34 7l' Hmctiori 19 (Biosi, 32
C.ÍOCi'Í düveú", j;,j., i.;¿j Function 20 (Bios), 32
CLCEKS. ÜA7", "i 2Qp Function 21 (Esios), 3Z
Col cl Boot, 68 Function 22 (Bios), 33
Command Script, 145 Function 23 (Bios ), 33
COMMON bases, 64 Function 24 (BioS), 33
Common Meínccy, 8, li Function 25 (Bios], 33
Configuration, 6£' Function 26 (Ellos), 34
Control ier types. 83 Functioü 2? (Bios), 34
COPY, 91 Function 28 (Bios), 34
CP/M, 2Function 29 (Ellos), 3É\
CPR, 64 Funct ion 30 (Bios), 35
CSV, 47 Funct ion 31 (Elios ), 35, 42, 43
Floppy SubFunction C), 3£'
C'ata Structuree. ¢5 Floppy SubPunction 1, 3í! "
íjateStampe'-, 34. 14 ,j¿j¿ Floppy SubFurÍct7on 2, 37
OFT, 14E Floppy SubFuncticn 3, 37
Cl7sa3semb": y, Bj' Fioppy SubFunction 4.
15€
B/P EllOS INDEX
F1c"ipy SubFunction 5, 3¿ Memory Bank, 34, 72
Floppy SubFuncticm t: ,39 Memory map, 8
Floppy Sub7unction j7, 3C Modules,
F"loppy SubFunction ¿g, 4G MO\/CPM, 11, 14, 18, lOt?
Floppy SubFunction g, 4íj MOVXSYS, 18, 115, 117
Floppy SubFunction 1Ci, 41 MOVZSYS, 18, 108
Floppy SubFunction 11, 41
Hard SubFunction C', 42 Named COMMONS, 64
Hard SubFunctirn 1, 42 No-Slot-Clock, 126
Harci SubFunction 2, 43 Non-Banked system, 9, 17
Function 32 (Ellos ), 43 NZBLITZ, 3
Function 33 (Bios), 44 NZCCN, 3, 26
Fur,ction 3¿1 (Bicis), 44
Function 35 (Bios ), 44 Options, 11
Function 36 (Filos :', 44
Function 37 (Bios ). 45 %CÜ'3, j¿j j.14t3
Fuñcticri 32 (Ellos,)', 45 PAFit\, 119. 124-
Function 39 lBios.), 45 Parse, 143
Path, uz, 133
Functzc)'_! 4C (ljcoñ. "ÁU Proaraj"n[nir: g, 25
Function 43 (Qcs! 14 3PUBiic, 92, g', 12G, 13:"
"tjí-tCtiOñ gg ÚJqÁ iZf
Fumtoorí 152' (ÍXj3", 143 RA!". 14£
RCP, 21 .144
Hart E'rives. 9: 2 Read-C'n1v, 13£
HDELÜ7". 1g, 9!1 RÉj, 04, 1Íj
HfúlÁá. i;y" RSX, já[j
HELP, j¿j¿
heuídecuíia'. 142 SASI, 42, SO, 74
SGSI, 42, 53. u
Icient- tiers. ¿jgf SCS!-Z, 74
Imape, 19 Sense, 102
Image (,!t¢3) fÚE, t!!.. j"jp SE: TCLOK. 12C)
lNíµ.Aml. 1c4 SHOWklj, 75, Kt3
INZTDii': ,1Sjg SmartWatch, 126
INSTALi2, 113, lCú3. "ilF SPIN'JP, 119, 124
InEta"iÍat1orl, 17 Stack Switcher, 44
INS7"ALC)S, ICE Stamp Create, 137
IOBYTE, 4, 26. Z7. Z: ít., 31 ,Stam Last Access, 13€
51, 71, 72, 14t Stamp Modity, 137
lOP. 114 STARTUP, 16, 21 ,69, 1CJ5. 114,
ICPIN!'7, 114 IZO
Step rate, 73
jump table, 25 Syntax, 2
System Attribute, 133
F., 14E. System Bank, 9, 11
System Prompt, 14é
Lanciing zone, 119, 1Z4
asrs, 19. t3í: ,"i li Tailoring, 7, 1C', 4'3
TCr'.P,
m-?: )pY 4), E' : TDD, 125
Memcx"y, 7TERM·2AF' ,60
157
INDEX B/P BIOS.
Timer, 49
TPA, 147
Trace, 81
User Bank, 9
Utility Programs, 147
Version, 10, 11, 12
VLIB, 60
Wait states, 49, 70
Warm Boot, 11
Wheel ,85, 135, 139, 147
Word, 147
XBIOS, 3
XD III, 139
XDPB, 55
XIJPH, 49, 52
Z-System. 7,147
Z40, 144
ZCPR. 58, 144, 14'
2RCOS, 2
ZRL, 64, iiCf, 1U
ZSCFGZ, 129
ZSCOIUG, 111
ZSCXJS, 2, 11C
ZSDC)S2. 52u 12é, 14b
ZSYSl E¥,.M1JL, 1cí
ZXD, 139
15?
TABLE OF CENTENTS
1.Introduction 1
1.1 About This Manual 1
1.2 Notational Conventions 2
1.3 What is B/P Bios? 2
1.3 The History of B,/P Bios .3
2. Features of B/P Bios 4
2.1 Character IQ 4
2.2 Mass Storage IQ 4
2.3 Clock Suppm"t for Time and Date S
2.4 Banked Memory Support ,5
2. 5Other Features 6
3. Tailoring aB/P BÚjs 7
3. 1Theory of Operation 7
3. 2B/P Eios U1es 1t3
3. 3El/P Ellos Options 11
3. 4Configuration Considerationz- 14
4. Instai7ing aB,/p 870s 1 E'
4. 1Boot Uac t.: Inst¿i]1atjc)r| : 7
4 2' Han-Ba'U'e2 Imag' TnsTa1Fatio'} 1'?
4. 3Eariketi 2,US, Kbn-bankeci System lnstaliat ion 2í'
4AFLiÍ}y Eart): Ecj !Nag: -" irsta1iaúcm 2'
4.SI'1 Case c)" 7l"Db1eT£ ZZ
5.F'rogt_a~tyiilí9 for E1,/p EÍ7c)s 2E
5. 1F13s jump TahNí ,Zt:
5. 2EjOS Data S["ucT'-}re£ U
5.2tConfigUra"io"\ Auuí En-
S.2. Z' E'isü Parametet" Heace' St
E' .2.3ÜiS. Pa!-amete" Éi)cr1
S.3' SyE7ten Data £t: "uctu:"es 5L
Fi .¿: .1Erwironrnent C'e£¿'"iptc'!_ Z'.l
E' .2.2TETm7ría) C.apai Nities e':'
Í) .8,!p' E7cs Uti?iúee t:.
e. : l3FáL: L:r -S}síte" lma: :e ?ci1chnc Uti :ity Cl
-
e. 1.' LÉing BP'3JULF Ü.f
5. 1.2 Me: it' Sc'"éé¶ Íjetaiie cm-
6. 2 BPCI'GFC -CcrÑiguration Utr1ity gj¿;
6. 2.1 Lki ng EF'CN7G f3t
6. 2.2 Hem Screen Details 613
6.3 BPDE9JS -B/P Bios DebuC Utility 77
6. 3.1 Usi ng EPDBLG "7
6.3.2 BPDC'JG Commands 7tj
6.4 BV'ORMAT -Floppy Disk Format Uíi?ity 83
6.4.1 Using BPFORMAT eg
6.4. 2Configuration 84
6.4 .3 ElP"OFNAT Erro" Messages BE
6.5 BPSWAP -Logical lhsk Swap jtility 87
t3. 5. 1US ñQ 9PSCJAP a
6. 5.2 BPS\í'¿Á F'-m'" P1esszges £3
Fj. El B"SYSGCN -Sy±: teT: Generaticn Uti íity 89
6.6. 1Using EP3YSGEN £9
6.6. 2 EIPSYSGEN Error Messages 9C'
ti. 7 COPY -Generic Fi7e Copy UtiVty 91
6.7 .' Usiñ¢ COPY gt
6. 7.2 CQPY Opticns 93
6.8 EMULATE -Mien Disk Emulation Utility .......................... 96
6.8.1 Using EMULATE 9E
6.8.2 EMULATE Error Messages 97
6.9 HDBCQT -Hard Drive Boot Utility .9¿!
6.9.2 Using HDBCQT 98
6. 9. 3 HDBOC'T Error MegsaCes 98
6.1C) HDIAG -Hard Disk Fcrmat/Oiagnostic Uti 7ity . . .. ...... .... .. .... 1OGj
6. 10.1 Using HDIAG 1QCi
6. 1Ü. 2HDIAá Error MessaeEs 1(r
6.11 INIRA¥Ii -RAM Disl- lnitializaticn Utility 1C4
6.1 1.1 Usjnc inifíañ3 104
6. 11 .2Commana Line M: xie ICU
6. 11.:jT'gIFlAy3 ÉY-t"Ot" Messanes 1Cl5
Él. 1Z!NITDIE -PZZ: os si=r l}litia]izat¿L)!7 Utility 1CiC.
E. 12. 1LÉ.'ru;; IN!TCÚ7 1(jC"j
6. 12 .2 II'UTDIE Erro:"Messages j¿7{)
'i. ;3!N8"AL1Z' -BOíN Track Support L'ti7ity 1G2
El. 13. 1Ugin{? INSTA 12 ICC:
6. 13. 2INStTAj12 El"rCIr Me8saCeE 1:1
6. !QPI?UT -:C' Pag4aCe :'"iIj3!izat7o?-, Utility 1:L
Él. 14. 1L'sinC !C'?!?CT ^'S
6. 14. ZIC"U\U Em"o: "Messaae: 1 1 Lj
U
6. ielosys -s'-'stü jj'",¿€é ;'j1e Loacler 715
6.1 E' .1LE'it"'€ L'"|¿;: ":: 1 ie,
fj. 1"l .2 LDSY8 E!"rC': _µes3aCez" i1 C.
C.. IE hq3',."yS.'Y"S. -é.oot Track Systeír' í't"i ñty 117
e. 16.1 Using t€'VXSf"S "17
6. 16. 2MOVxSYS Errcv- Mex: ages "tt,,
E). 17 PA,'ik -Haul Di-1ve Heat pa!"\-, UriiiÍ)' 11?
fj. 17 .i Us71"íg PAF: ?' 11?
6. 17.2 WR' Error Messages 11£'
6.18 SETCl--C)': -Re.a}-T7rr,e CiC.G Ser Cti1aty iZü
6.1t'.1 Using SE"CL3K 122)
6. 18. ZSETCLC'¥( Ejro: "Messages 1 21
tm 19 SHC'WH3 -Partitiori Display Utility 123
6. 19J Usi rig SHOWHD lZt
6. 19. 2SHOWHD Error Messages 123
6.20 SPINUP -Hard Diqk Motor Contro7 Utility 124
6. 20.1 Using SPINU" 13í
6.20.2 SPINUP Error Messges 12E
6. 21 TY' -SmartWatch. Scppout Uti lity 126
6. 21 .1 Us ing TDD 125
6. 21 .2Confi?Urirja TDD 127
-
6. 21 .3 TDD Er"or Messages 1 :
?7
6, 22 ZSC4L -ZS%S" Confi gt-""at ioY" Ut' 11t",' 12?
6. 22 .1[r1te'"a.Fti\Y'e Uee :2'"
E. AL .2 Cc)n)q: a':(-: Ñ'7é (' £>.pert Modeñ Ute 133
6. 2:Z.3 Option DescriDÉic??¶. 1?'
6.23 .4 Ermr Me3sagE£ 1313
6. 23 ZX3 -File Lister Utility for ZSFQSZ 139
6. 23.1 Using ZXT' 139
6.23.2 ZXD Cpticns 13?
6. 23 .3 Customizing U") 142
7. ZS1X)S Version 2143
ÉL ZCPR Versicri 4144
Glossary 145
Annotatecj Bib1iograp'by 142
Appendix 1-Bios Unct lot": Reference 1 5£'
Appendix 2-ZSDOS Function Reference 153
Appendzx 3-Fcitespec arid File Stamp Formats 155
Index 1"C
Notes 1se'
B/P BIOS INTRODUCTION
1.0 Introduction.
The Banked and Portable (B/P) Basic I/O System (BIOS) is an effort to stan-
dardize many of the logical to physical mapping mechanisms on Microcomputers
running Z-Systems with ZSDOS. In expanding the capabilities of such systems.
it became apparent that standard BlOSes do not contain the functionality
necessary, adequate standardizat ion in extended BIOS calls, nor an internal
structure to fully support external determinat ion of system parameters. B,/P
Bios provides amethod of achievin,sz these goals, while also possessing the
flexibility to operate on a wide range of hardware systems with amuch smaller
level of systenís programming than previously required.
1.1 About This Manual.
Docurrtentatic: n on B/P Rios consists this manual plus the latest adder,dam on
the distribution disk in the file README.2ND. This manual is di\"icled inim the
fol lov.'insz sect ion:s:
L—
oThe Features of B/P Bios suníníai"izes the sig.nificarít fcmui"u of 13/1"
!3ios in genuiúd .highi ightinµ advantages and the tÍé\\ litni tations
írí the" :3ys tCl7i .
c) Tailoring B/P Bios con'.ainx dctai Is on alt¿"rin? the Hi¿ín: \" c;'ticm>,
µ"ertei"att- ¿i c:t!:- tortí)ze'd .N"L file tail(/rL'c: to yo',n" .sysiL-!;.
(' Installing aB/P Bios Aeiai!s t!iz inxta!lation of E/F' Bier- i:í}).-}[:j
L"/"/)¿"/X¿," 'incl /J,ii": ;:¿'(/ uv"if igur'n io: win a"how to" fas!1!¿)"}.
t\ Programming for B/P Bios describes the intei"faccm data ±-[i'Líí.'tC¡"c'
anc! recQBlu!L: 11deci !)!"¿)g!"anlnijrLg pract ices to insure" the n|a\i[|: u:!l
Lt'ñú: f'it anti r)crfi)rniancf-: front systems with B/P Bioíi.
t) The B/P Bios Utilities cit: xcriMs the p'drpQse. operation. anci cu'kt()!: -
imt icm al lsupj'l led LÉ/'Í' Ftio> i-:tilitiÚf-] anc1 support r{.)utirlL'y .
uAppendices :',Mch sul}í[llaI"izt.' w:i"iQüs technical iriformat ion.
c) aglossary dcfininµ niany technical terms used in this Manual.
í) An index Qt' key wqiÜS and phrases used in this Manual .
For thom- nen interested in the technical details. or who want to bring th'-'
system up \Áitfí apre-configurec! version as quickly as possible, Section 4.
Installing aB/P Bios. \-\"jj} lead you through the installation steps needed to
perform the fina! tai]Q1"inF to your specific computer. Other chapterx CO\"L'l'
details of the individual software modules comprising the B/P Bios, and spc--
cifics on the utilities provided to ease you use of this product.
.
1
INTRODUCTION B/P BIOS
1.2 Notational Conventions
Various shorthand terms and notat ions are used throughout this manual .Terns
are listed in the Glossary at the end of this manual.
Though the symbols seem cryptic at first, they are aconsistent way of briefly
summariz ing program syntax. Once you learn to read them you can tell at a
glance how to enter even the most complicated conwíands.
Several special symbols are used in program syntax descript ions. By conven-
tion, square brackets (Ül indicate optional command line items. You may or
may not include items shown between brackets in your command, but if you do
not, programs usually substitute adefault value of their oven. If items
between brackets are used in acommand, all other items between the brackets
must also be used, unless these items are themselves bracketed.
All of the support utilities deueloped to support the B/P Bios systeui contain
built-in help screens which use the above conventions to display helpful
syntax sunímaries. Help is always invoked by following the command with two
slashes l//l. So for exaníple.
ZXD //
irn"okes help for ZNJ. the ZSDOS extended directory program Interactive ZSLK_)í;
progranis such as BPC\FG3 also contain more detai itul help messages which appí'ai"
as asession progrEs.%e$.
Many utilit les may be inroked froní the command line with options uhi ch corjÚnar}¿}
the programs to be'have irt slightly different ways. By convent ion. opt ions arc
giuen afte-í" otht:i' conltÍianc} parameters. For example, the Poption in the COin-
manci
ZXD *n P
causes the ZX!) directory utility to }ist all íiles l*.*) and send it:soutput
to the printer (P). For conrenience. asingle' slash character (/1 can often
be used in place of leading parameters to signify that the rest of the' cormnand
line consists of option characters. Therefore. the command
ZXD Ip
identical in níeaninsz to the previous example (see 6.23 for more on ZXD).
-
1.3 What is B/P Bios?
B/P Bios is aset of software subroutines which directly control the chips and
other hardware in your computer and present astandard software interface to
the Operatinp Systeru such as our ZSDOS/ZDDOS, Echelon's ZRDOS, or even Digital
Research's CP/M 2.2. These routines comply with the CP/M 2.2 standards for a
Basic ID Svsteni (BIOS) with níam' extensions; some based on CP/\Í 3.:t(aka CP/Y
-.
2
B/P BIOS INTRODUCTION
PJu5). and others deve!opeci to provide necessary capabilities of modern soft-
ware .When properly coded, the modules comprising aB/P Bios perform with ail
the standard suppc'rt utiíitie>. nearly all Z-System utilities. and most apj"Ai-
cat ion programs without alterat ion.
The ability to operate Banked. Non-banked and Boot System versions of the Bios
with asingle suite of sof tware. across anumber of different hardware nía-
chines, plus the maximization of Transient Program Area for application pro-
grams in banked systems are features which are offered by no other system of
which we are aware.
1.3 The History of B/P Bios.
Our ear jier work deve loping ZSlxjS convinced us that we needed to attack tht-'
machine-dependent software in Z80-compat ible computers and develop sorue stan-
dard enhancements in order to exercise the full potent la! of our machines.
This preI!ii.bL' is e\-er] tj1o}-c· true today with large Hard Disks (over tOO !Qeµt-
brtes )bí" insz \'éj"\" comníon. needs for larpe RAY Drives, and an ever shr inking
Trans ierít Program Area. Attempts to gain flexibility with norníal operatin?
systems were constrained by the' 64k addressable memory range in Zm-conípatib]t-'
systents. arid forced frequent operat inp system changes exempi if led by XZCOú! and
KZBLITZ where di fferent opei'at ing conf igurat ions could be quickly changed tcj
accommodat €' appl icai ion program needs.
In the núd tcj !atú ]9f0'x, serei"al efforts had been made to bank pcntíom of
CP/Y 2. 2"typt"' $\">téihg. X!7IOS was abanked Filos for only the Rr)(j4}s(l-i)ast:
yicI"o'\1iTlL ,Si3-lRñ lamí ly. \'\í"íilc it displayed an excelient and fiexiblt· inuir-
face and the ahí lity to Qre}'ate with avariety of peripherals, it hací several
qui rk',: anc! r: ot iceabl yde,xyadt'c! the computer performance. Abanked P,icw "\',js
aIso !']"(jcluc'L'(í fui' the !:|-M-]S0 sin?ie board S-1Ó() computer, but required spú-
c:ial \"c'!"si()}!b of ní: íny Z-System utilities, and was not produced in any sí>'nif -
cant quantity. Other spinot"i'sí. such as the Epson portable, at tempted barikiñf-'
cjf thú Pías. hut nmst !"ai leci to achiere our comprehensi\"e goals of conipatibi i-
ity with the' eu: i>tin,c s(-)ftwe?]"e bít>,e, high perforníance'. and portability.
In !9S'Á Catn cltd\"e]ope(i the first prototype of B/P Bios in aW'on-banked ñiodt- on
his Te!eTe-P. v,hi Ít? Hal cmc'entrated on extending ZSDOS and the Command Proces-
sor .As of niic!-l992, Fl/P Bios has been installed on:
YASBEC -ZIBO CPU, FDI'"2 FDC, DP8490 SCSI. 1MB RAY
Ampro LB W/MDISK -Z90 CPU, FD1770 FDC, MDISK llvíB RAN
MicroMint SB-18Q -HD64180 CPU, SMS9266 FDC, 256KB RAY
Compu/Time S-lOG -Z80 CPL', FDV95 FDC, lMB RAN
Te]eteb: -280 CPU, NEC76S FDC. 64KB RAM
3
FEATURES B/P BIOS
2Features of B/P Bios.
B/P BIOS is designed to be completely compat ible with the CI'/M 2.2 standards
for aBasic IQ Svstem. as well as to provide ruanj" extensions needed for banked
-.
memory which is becoming sq prevalent with newer systems and processors.
Additionally, strict codimz standards used in the various modules forming the
BIOS ease interface problems with applicat ions programs and provide a more
robust framework for future development .The extensions added to the basic
CP/M 2.2 foundation include many elements from Digital Research's CP/M 3(aka
CP/M Plus). but in a more logically consistent manner. Also included in
banked versions are provisions for managing up to 8MB of extended memory for
banked applications, RAN Drives and potentially multitasking in future ver-
sions .To provide insight into the methodology used, let us ño\\' examine SoI]\e
of the features in ageneric B/P Bios.
2.1 Character (O.
As defined by Di?ita! Research in their CP/M 2.2 standards. character [(i
consisted of logical cié\"icés referred to as TTY, CRT. UCl, COX. etc. B/P bias
extends and ger}erai izes the.se interfaces using the IOBYTE to define- tour
M-
physi cal deri CE'k cal Jed ccm ,COM£'. PIÓ and NU-. The first tv\'o. (-C): \!! arir)
CO?42. are serial portz,: PIó is aParallel port, whi Je NUL is a"bít-bücú-: t"
which can be replaced by acustoníizeci driver. or used in lieu of an actual
device. Digital Research provided only alimited interface capabi lit}" tcj tht
character devices inCP/J! 2.2.consist irtg of aConsole (COK ) .an auxiliary
Input and Outj"mt lRDK/PIA ).and aPrinter (I-ST) .The ability to sensc· Input
and Output Status with these devices was extreníely limited and was enhanced in
CP/M 3.These enhanced capabi lit les are completely incorporated into 13/1" Biou.
with the addition of strict register usage sq that only re)erant registers !ílá\"
be altered in the respectire routines. By n}aniµulatin? the IOB\"TL-, any of
four physical Cíé\_i ces niay be used in the three logical derices of CO: ¿>c)lc.
Al'Xi liary. and Printer (I-T!"1 .
Also featured in B/P Bio" are modifications of C'P/Y 3functiom u") initia!i:'c
(cu" re-initialinñ al! derices and parameters, and return the addre.w of ¿j
table which contains naníes and parameters of the defined character de\"ic¿'>.
While not totally compatible with CP/JI 3equivalents, these functions art:
consistent with the spirit and functionality needed with this advanced systen,.
Included in the device table are; flags defining whether the device is capable'
of Input .Output or Both, Data rates for serial devices (Maximum and Set ).
Ser ial data format where appl icable. and Handshaking, rnethoci (CTS/RTS, XOI"/XOFF'
or None), as well as Input and Output Data masks for stripping unneeded bits
from characters during JO.
2.2 Mass Storage lO.
A!) versions of Di?ita] Research's CF'/M EllOSes define' only ageneric Disk.
driver with inu'!ementations of Floppy, Hard. RAM and Tape drives left to tht-'
user or cié\"é io¡")cI". In f3/P Bios. we went severa! steps further to ease ltkiñ\"
4
B/P BIOS FEATURES
problems .First. we retaineci ali standard CP/M 2.2 functions and parameters.
added CP/M 3features for returning the Disk Parameter Header (DPH) table
address, and flushinµ of the software debiocking code segment. and added añt\\
vector to the BIOS jump table to provide astandard method of directly ad-
dressing low-level device functions. Several standard low-level Floppy Disk
functions are supported and used by the standard utilities, including afunc-
tion to return the type of Disk Controller in use which permits asingle
support utility to adapt to awide variety of hardware platforms. In alike
manner, low-level funct ions are provided for SCSI/SASI Hard Disk drives, and
provisions for RAM Disk drives in the event special hardware is implemented.
The methods used to implement these access mechanisms may be logical ly extend-
ed to handle Tape Drives or Network Interfaces.
2.3 Clock Support for Time and Date.
Many Harduare vendors hare added provisions for Tirne and Date as non-stanc!,u"c?
exten,s ions to CP/úl 2. 2BJOSes, and more have incorporated such support into
CP/M 3BlOSes. \'\"e opted to define the' CP/M 3clock vector as a ZS!XMu,tandaiu"!
clock building on our previous Operating System wctrk. This entry point into
the Bios completely complies \\ ith our ZSDOS standards and can con: pletúly
replace' the separate clock driver when used with ZSDOS. For systenis ca1)ar}!E'
of rt?turnirlL' terrths-of-m'cond>. such as the YASBEC and .SFi-l80. tújc: stanclarci
ha> been eÁaríc'ed tc' support this capability as well.
2.4 Banked Memory Support.
\\'hi U? Digital Research adtkú: banked níemory support to their CF'/N }. it \\"ás it
amanner inccynl1)atií)lt' v,i th Ftiob interface' standards def ined foi euí') lei" t'p,/y
standm"du. The niethsci used in R/P Rios is compliant vcith CP/!¢ Z.2 11! direct
accessin6" oí bíios func-t ions. \íi th only one niinor except ion vvhtíi usiny the
Banked ZS3OS2. and contair!g uúíny of" Ute CP/jf 3extensions added ícu" banE.E'i-j
niewory suppürt .\\'i t!i sonic b'Ang modif led to be consistent with standards
adoptecl t'cc Z-Sy.Ktel|l .5oft\\"arg-. The exception to CP/M 2.2 accesses occurs uiit'n
the Operat in;' ykys7tt!l! can access certain buffers in the Systetn ,\4enlc)I"y batí!..
with zsFr): ·, i. AI íocatiün T':it Buffers (AL\"), Check. Buffers (CS\"). anti tht-· Dir,?
Host Buffer are' all contained in the Systetn Bank and not directly acces>ib>i-
froní Transient P1"QgI"a!!'l$. To compensate for thi s,we have added acoriímanc!
ZSLX)S 2to return the free space on disks (the most common reason for accesu-
ing these buffers) and tal iorecl several ut ii ities to adapt to banked and non-
banked systemx.
In addition to the priníitives init lated br Digital Research. we added func-
tions to directly access Words and Bytes in extended banks of memory, Direct1y
accessing software routines contained in alternate memory banks, and properly
managing the systeni when errors occur. These features make B/P Bios much mort
robust and resi lient than other products. These features are implemented hy
methods transparent Lg tht' system útil it les so that the same functions aTt'
aval lab te iii both banked and non-banked versions.
5
FEATURES B/'P BIOS
2.5 Other Features.
B/P Bios contains astandardized identification method which may be used to
deterniine the hardware on which the software is operating. This allows app}j-
cations to "adapt" to the environment in amanner similar to that used in the
rest of the Z-SNstem community. It also minimizes system "crashes" by execut-
ing programs wÜch assume certain hardware features which niay be detrimental
if executed on other systems. The effects of identification of physical
system parameters is most readily noticed by virtue of asingle suite of
support programs performing low-level functions such as formatting and diap-
nostics which function across widely differing hardware platforms. Portabi li-
ty on this scale can rarely be seen in other computer systems.
The ZCPR 3.4 Environment with extensions is mandatory in aB/P Bios system
Beginning with the addition of Systercí Segment address and size information for
CPR, DOS and BIOS which were added in the ZCPR 3.4 Em'ironíoent, B/P Bios also
adds aResident User Space which may be used to locate unique rout ines for
custoní applications in arüanner siníi lar to, but ruore consistent than \'Z-(_: ("):\l.
An Environment \"ersion nuíubt'r of 9ñH identifies the Z3 Em"ironnient as bejnF
compl iant vcith H/P definitions.
In Banked system, app! icat ion progranis may also be placed in alternate niUní("'Iy
banks usinz Iücat ion and si zirig inforriiat ion contained at standard pos it ionu
%—
\qithin th±' Rios Headcr Structure". This feature perínits siszniíicantl'i greater
íunct ional ity v\"i thout sacri ficing precious Transient Program Area. While the
scheme' employed in the' initial distribut ion is subject to minor acíju'4trr!eníb au,
tht banked 7SñOS2 l-)ec()[fleb niort firm!y cié\'t loped. experiinentat ion and SLlf2.2t-^-·
tiom imo this TtUÜRI are encouragej.
6
B/P BIOS TAILORING
3. Tailoring aB/P Bicis.
To customize aB/P Eíios for v"OUl" use, or adapt it to a new hardware set, you
will need an editor and an assembler capable of producing standard Microsoft
Relocatable files. Svstenis using the Hitachi HD64180 or Zilog Zisó must be
-
assembled with either ZMÁC or SLR180 which recognize the extended mnemonic'
set, or with aZ80 assen}b]eT and MACRO file which permits assembly of the
extended instructions. For ZSO and compatible processors, suitable assemblers
include ZMAC' and Z80AS)¢. For any assembler, fai lure to produce standard
Microsoft Relocatable code will preclude the ability of our Standard utilities
to properly install B/P Bios systems.
3.1 Theory of Operation.
In order to understand the need for, and principles behind B/P Bicis. you must
understand the way in which CP/M 2.2. as modified by the Z-System. uses tht'
available memory address space of aZ80 microprocessor. For standard versior'>
of CP/M and compat ibíe systems. the only absolute memory addresses are cqj']-
tained in the Basc Page which is the range of Oto ÍOOH. Al! addresses above·
this fjQiñt are rariahle lwithin certain limits). User programs are normal ¡y
run froni the Transient Program .'\rea (TPA) which is the remaining space aftci"
all (")ljer¿íL ing Systt"ru cQn}pQnents have been al located. The following c1epicr>
the as,>iigncd arcas pictorial ly alonz with some cornmon elements asmgneci tt_}
each lrlE!}i¿)r:\" area:
7FFHt !
Z-S}': "Á2ñ, Buf fers ENV, TCUP, lOP, FCP, RCP
É
)I
)Eros )Code +ALV, CSV, Sector Buiú6' s
lOperating System CP/M 2.2, ZRIXJS, 2SDÜ3,1
\i
Command Processor CCP, ZCPFl3. x
i
i
Transieat
Program
Area
O1OOH
Base Page IOE3YTE, jmp WB, jmp Dos, FCB. Buf fer
OOO'1H l
As more and more functionality was added to the Z-System Buffers. biggi: r
drives were added using more ALV space, and addit ional funct ionality was added
to Bios code in recent systems, the available TPA space has become increasing-
ly scarce.
B/P Bios attacks this problení at the source in amanner which is easi Jy ada!"'L-
able to different hardware platforrus. It uses additional memory for more than
tht· íraciit ional role c/S' simple RAY Disks',. ii moves niuch of the added. o"\'e]"he¡-1d
7
TAILORING B/P BIOS
to alternate memory banks. The generic scheme appears pictorially as:
FFFFH
BNK1
80OOH
7
BNKO BNK2 7BNKU BNK3 J
j
OOOOH L_ _ jL_jj
)BNKM
TPA SYSTEM USER RAM DISK
As can be seen front the above diagram, mutt iple banks of memory may be as-
signed to different functional regions of memory, with each 32k bank (except
for the one defined as 13XKl) being su"itched in and out of the lower 32!: of the
processor's memory may. The bank defined as BNKI is ALWAYS present and is
referred to as the Co///mc)n Bank. This bank holds the portions of the C)peI"atin€
Systent (Cornrríancí Processor. Operat ing. System, BIOS, and Z-System tables )which
may be accessed from other areas, and which therefore must always be "risible"
in the processor' srííeníory. It also contains the code to control the Bank
switching iaecharíisms within the B/P Filos.
To illustrate this functional division. the memon" map o fabas ic. Fí/í' Filo: -,
.
systeni is diridecl as:
FFFFH
Z-System Buffers
User Space
Bics
)
Operating System
Command Processor 800OH
/Bios Buf fers
800OH -Transient -Banked Ellos Part
!
Banked Dos Part
Program
Banked CCP Part
Area CCP Restoral
O1OOH O1OOH
Base Page Base Page Copy
OOOOH OOOOH
TPA (EJNKO/BNK1 )System Bank (BNK2)
8
B/P BIOS TAILORING
The B/P Bios banking concept defines aone byte Bank Number perniitting up to 8
Megabytes to be direct ly controlled. Certain assumpt ions are mack irí the
numbering scheme. the foreniost of which is that BNKO is the lowest physical
RAM bank, BNKI is> the next incremental RAM bank, with others follcnt" in incre-
menting sequential order. Acouple of examples niay serve to illustrate this
process. The YASBEC is offered with acouple of options in the Memory K1aj-'.
Units w"ith the MEN-!. 3or 3decoder PALs assign the first 128k bytes of
physical memory to the Boot ROM. so BNKO is set to 4(Banks O-3 are the RCNI.
The MIN-4 PAL only uses the first 32k (Physical Bank O) for the ROM which
means that BKKO is assigned to 1, BNKI to 2and so on up to the l Megabyte'
maximum where B\'KM is 3í.
The Ampro Litt le Board equipped with MDISK, on the other hand, coniplete6"
removes the Boot ROM from the memory map leaving artiaximurü of 1 MB of contigu-
ous RAM space. In this system, BNKO is set to Oand BICKM to 31 of afully
equipped lNfl3 MIJISK board.
The region beginning after 13ÑJ is referred to as the Systeüí bank. it bq;ins
at the bank nuníber assigned to BNK2 and ends at the bank number iníinediately
before that assigned to the User Bank, B\KL' if present. or BNK3 if no User
Bank area is deíined.
If' p'"esent .one or htO1"t: 32b banks of meínory ríiay be defined \\itti the B\"P: !-"
equate for unique user prograrns or storage areas. This area begins with the'
bank num!ucr set to the labe !and ends at the ban!: nuriíber immediately before-
thc' B\"K3 lahe i.13\K3 defines ahigh area of physical memory which is nl[')j.}t
often used for aRAY llisk. p]"o_\"idinÉ fast temporary workspace irj tht' forní of' ¿j;.
emulated ííisk drim.
B/P E1l)s ccmtairís prc't ect ion uiechani sins in the forní OÍ' software chéck: -- to
inture that critical port io:is of the memory niap are enKrced. In the' C?1->e c/t'
\'on-bank.ec! systenim acheck. is niadc to insure that the system size i.s ñCd <·.)
great that the Bio:-. may o\"eL"\i'l"ite reserved Z-System areas in high memory (kcl-'.
lOP, etc }. li a!>L).sy,il)ie Q\"eI"flc\\\ condition is detected, the niessayt
++ mem ovfl ++
will be issued when the sg>téñi is started. In Banked Bios systenis, this
message v,i1l be displayed if the top of" the system portions in the SYStem Ban?.
exceeds thc 32k bank size. For rnost systems, this space still permits drñ"es
of severa! hundred níqzabytes to be accommodated.
Since the Conuiíon port ions of the operat ing system components must reriiain
visible to applications, asimilar check is made to insure that the lowest
address used 1)\" the Command Processor is equal to or greater than 800OH. Thí s
.
factor is checked both in both MOVXSYS and BPBUILD with either awarning
issued in the case of the former, oí" validity checks on entry in the c.ase of
the latter.
O
~
TAILORING B/'P Btos
3.2 B/P Bios Files.
This BIOS is divided into anumber of files. some of which depend hiph!y on
the specific hardware used on the computer. and some of which are generic and
need not be edited to assemble av\'orking system Much use is made of conüi-
tional assembly to tailor the resulting Bios file to the desired configura-
tion. The Basic file, BPBIO-XX.ZSO, specifies which files are used to assem-
ble the Bios image under the direction of an included file, DEF-XX.LIB. It is
this file which selects features and contains the Hardware-dependent mnemonic
equates. By maintaining the maximum possible code in common modules which
require no alterations, versions of B/P Bios are relatively easy to convert to
different machines. The independent modules used in the B/P Bios system are:
BCOTRAM. Z80 -(only needed in BOOT ROM applications)
BCOTROM. Z80 -(only needed in BOOT ROM applicat ions)
BYTEIO. Z80 -Character IQ per IOBYTE usinsz IIO-XX routines
DEBLOCK. Z80 -Disk Deblockinsz routines
L-
DPB.LIB -3.5/5.25" Floppy Forinat Def initions (if AutoSelect)
DPB8.LIB -S'/Hi-Density Floppy Format Definitions (if AutoSelec't)
DPB2,LIB -Additional Floppy Definitions (optional if AutoSelec't )
DPBRAM. LIB -Fixecí Floppy Format ljef initions (if" Not AutoSek'ct)
DPH.LIB -Disk Parametú'í" Header Tab le Floppy deíinit ions
FLOPPY. Z80 -Floppy Disk Eigh-Level control
SECTRAN. Z80 -Sectcu" 1rans!ate routines
SELFLPI .Z80 -Floppy Select routine (if .'\'oí auto selectingf
SELFLP2 .Z80 -Floppy Select rout ine (if auto selecting)
SELRWD. Z80 -Genevic' Read,/'t\l"ité routinc.i
Z3BASE. LIB -zcpr: 1.\ file eqtmte for Lm'ironnimt settiruzs
Other f'i les are ha1"a\\"art' \"£'T.>ic[") dep'encient to varrinp extents. These müdu les-
requiring cuutcmizat ion for different hardv: are systems are giren naines which
encl v,ith ageneric "->: '." designator to identify specific versions. Tal loring
these modules ranges from Anij'le prompt line custoniizat ion to coníj'tete 11--
writes. Versions of' 13/!" Bios gene-rated to date are ident ified as:
"-18" -)}icr(Ü|ii)t sn-lµ:!") (MISO CPU. 9Z(y"x FTK', 5NSJ SCSI l
"-YS" -\"ASHLG (Zl90 cut", 1""2 FDC, DF'$J90 st. SI)
"-AM" -Ampro Little board (ZSO CPL', 1"70 FDC, !Pffí NLÜSK)
"-CT" -Ccmpu/Tim' S-J(")() board set (Z80 CPU, 1795 FIX) IMEI 31eniory)
"-TT" -Teletek (Z80 CPL', 765 FIX')
Files associated with specific' hardware versions or require tailoring are:
BPBIO-XX.Z80 -Basic fi le, tailored for included file nanies
CBQOT-XX.Z80 -cold Boot rout ines, Sign-on prompts
DEF-XX.LIB -Equates for option sett ings, mode, speed, etc.
DPBHD-XX.LIB -Hard Drive Partit ion Def init ions Kptional)
DPBM-XX .LIB -Ram Drive Definition (optional)
DPHHD-XX.LIB -Hard Drií"e OPEl definitions (optional)
DPHM-XX .LIB -Rani Drive DPIJ Definitiori (optional)
FDC-XX .Z80 -Floppy Disk Lo\\'-Le\'"e] interface/drivei" rout ines
HARD-XX. Z80 -Hard ñrive Low-i.evel interface/driver rout ines (opt ioníÑ )
10
B/P BIOS TAILORING
IBMV-XX. Z80 -Banking Support Rout Xtes (if banked)
ICFG-XX .Z80 -Configni"ation file for speed. Physical Disks, etc
ITO-XX. Z80 -Character IO definitions and routines
RAMD-XX .Z80 -Rani Drive interface/drir"er rout ine-s (opt ional )
TIM-XX .Z80 -Counter/Timer rout ines and ZSIX)S Clock Driver
WBCQT-XX.Z80 -warm Boot and re-initialization routines
3.3 B/P Bios Options.
The most logical staItin3 point in beginning aconfiguration is to edit the
DEF-XX.LIB file to select your desired options. This file is the basic guide
to choosing the opt ions for your system, and some careful choices here wi i !
minimize the Bios size and maximize your functionality. Some of the IhOíE'
important optiont, and abrief description of them are:
MOVCPM -!nteprate into MO\'CPM "type" loader" If the syste!l¡ is to bt-' in-
tegrated into aMO\"CF'J! system the Em"ironment descriptor comainecl in tlzti'
CBOOT routine is aluays mored into position as part of the Cold Start procesx.
If set to NO. acheck li I)c made-' to see if an Em"ironnient Descriptor i<
already loadet?. and tije ijiof> copy v\'i l l not be loaded if one is present .
NOTE: Ucii ¿i$s.elliÍ)jil]g aijios for Boot Track Installation (!'lÚ\"{: P\'t sct tCt \"T: -'.
many options are ch-'kteti U-) conserve space and the Bios Version \'umht'r i>.
forced to l. l.
BANKED -Is tín> ¿j |)an;: .t{.: Fí!(j)$: ',' If Set to YES. the Bank control iüociuk-. jK7í.
i:sinc JüCh-ul 1ii tht a.6$eQ,!")ly. and tnuch of the code is re Kcatcn ,j tíjc-" S}"G[C"!l:
bani: .XOtt- íh>ít aFk¿T]µ: t'(l >k:\">tE'i!| CA'A"OT be placee' on the Systeni TracÉ: >. cc
integrated iñígj a'Y!G)\"(,'i?': ij|lf"".?: '-'.
IBMOVS -Art- Iñrecí ]nte}"-í;¿: n! Ño\"és possible" II" set to YES, direct trantit"er
u:!' data }-)et\',E!e1"} bank> j.b possible such as with the Zijog Z180/Hitachi 6ji8C'.
If NO. a25(")-ljyte trarí"if'er Míf'fer is included in high C.onmon Me!|!': jl"y and jñít?j-
bank l}jU)\_e.4 reqaii"e trarisfcí" of bytes through this buffer.
ZStX)S2 -Asseni!: K thi 5fen' aBanked ZSDOS2 system" If YES. the Al-\" arid c,g'\"
buffers "nill be plact'c! in the System bank invisible to normal progranim Thi f
has the side efíect that rüany CP/M programs which perform sizing of fi les
(Directory Listers, DATSV\EEÍ", MEX, etc) which do not know about this functiím
will report erroneous sizes. The advantage is that no sacrifice in TPA jy.
requi red for la1"?e Hard Disks. Set this to NO if you want strict CP/!vl 2.2
compatibility.
FASTWB -Restore the Conímarid Processor froni the Systeni Bank RA3!? If Set l-¿"!
YES, Warm Boots will restore the ConíriiancI Processor from areserved area in th'-.
S\"sterri RAY hanl: rather than from the boot tracks. For the maximum benefit crf
-
B/P I3iot>. always attenipt to set this to YES. In systerris without extended
Inel}"N)l"j". it MUST be >,ct to NO.
MHZ -fiC't Lg r'f"cjcc': >g,f:'I" Sj'cti-ci in closest eren Mégáhtn"tz (e.g. for a"L2l6 jUl:
cloc!: ra'.e'. st' lu-) '9j .The \"túúe entered here is used in many systems to
11
TAILORING B/P BIOS
comptne Timing values and/or serial data rate paraüieíers.
CALCSK -Calculate Diskette Skew Tablet' If NO. aSke"n' table is useci for eac!i
floppy format included in the image. Calculat iñft Skew is general iy more
efficient from asize perspective, although slightly slower by facíors which
are so srriall as to be practically unmeasurable.
HAVIOP -Include lOP code into jump table? If the IOPIXIT routine satisfies
your lOP iT]itia}ization requirements, you may turn this off by setting to NO
and save alittle space. This typically will be turned off when generating ¿¿
system for MO\'CPjí integIation to conserve space.
INRCM -Is the Alternate Bank in Roy': Set to NO for Kormal Disk-based sys-
tems .Please contact the authors if you need additional information concern-
ing ROM-based systeni components.
BIOERM -Print BIOS error messages? Set this to YES if you desire direct BIOS
printing of Floppy Disk Error Messages. If you are building aBIOS for place'-
níent on Boot Tracks. howerer, you \'\'i li probably not have rooní and must turn
this Off. Set to NO to simply return the normal Success/Fai! error f!a# with
no Message printout .
FLOPY8 -lncltNe S"/Hi-Dc'nsity Floppy Forniat.s" Sonie systems lSZs-lSG.
{'olÍ!pu/7"im€') cart handle both S.25" and S' disks. If your hardware supports thú
capabi lity and you want uüt S" disks as \\Yj} as the norníal 3.5 and S.2S"
diskettes. setting thi:'to YES v\"iii add formats contained in DP13éS.I-lb am!
control logic to ti"jÉ assembly. Future systmiís may taZ eadvantage of" the
"i-ligh-Density" "\.S and 5.25" Floppy Disks which Use: higher data ratesi. Their
definitions v,i!! be controlled by this flag as well.
NOTE: If AI7OÑ.- 1: > set to NO. this option will probably cause the BIOS to M
larger than necessary since these addit ionaí formats may nct be accessible.
MORDPB -Ilse llioi"e Floppy DE'B'S (in adclit ion to noriual 4-S.2S" aná opt iom!
S" ) i' If YES. thc ii le DPB2.LIB is included. Many of" the formats are DulÜirtie!: .
and mav be filled vtith atu" ncm-conflicÜirisz formats \"ou desire.
·
NOTE: If AL'TC'SL ir set to NO. this c)[)tiQn will probably cause the SlcjS tCj be
lartzer than necessarr since these additional forniats rriav not be accessible.
MCFIDEV -Include Addit ionai Character Device Drivers? Is set to YES. user-
defined drivers are added to the Character IQ table, and assQciated driver
code is assembled. Systems featuring expansion board such as the SB-180 and
YASBEC rnay now take advantage of addit ional ser ial and parallel interfaces
within the basic Bios. Set to NO to limit code to the basic 4drivers.
NOTE: When assemblin# aBios for Boot Track Installation (MOVCPkt set to YES).
MORDE\" is overridden to conserve space. and the Bios Version Number is forced
to l.l in the distribution files.
BUFCON -Use type' ahead buffer for the Console? If set to YES. code is added
to create and nianasui aÜrpe-ahead buffer for the driver assembled as the
L—
12
B/P BIOS TAILORING
conso le .This device \\iii be controlled by either interrupts (in systems such
as the YASBEC and Sl3-180) or background po! ling (in Ampro and Ccmpu/Tiute ).
This means that characters typed while the corúputer is doing soníething else
will not be lost, but vcill be held until requested.
BUFAUX -Use type ahead buffer on Auxiliary Port? As with BUFCO\' above, set-
ting to YES will add code to create and manage a type ahead buffer for the
auxiliary device. Since the AUX port typically is used for Modem connections.
bufferinsz the input will minimize the loss of characters from the remote enc!.
AUTOSL -Auto-select floppy formats"! If set to YES, selection of Floppy disks
will use an algorithm in SELFLP2.Z80 to identify the format of the disk from
the DPB files included (DPB.LIB, optional DPBS.LIB, and optional DPB2.LIB) aríj
loµ the disk if amatch is found. There must be NO conflicting definitions
included in the various files for this to function properly. See the notes ir]
the various files to cjarifv the restrictions. If set to NO. the sincúe file
-
DPBRA\1.LIB is incluckd which may be tailored to contain only the fixed formt
or foníiats desired per disk drive. This results in the smallest code require-
inent. but least fíexibili'n".
-
RAMDSK -jnc'fude code' for aRAjI-Disk'? If set to YES, any tnemry aborc the
Systeni or L'ser bank may be used for aRAM Drive (defauñ is d:rire M: )by
including the lilt: EAy!-)-xg: .zs("). Parameters to cíeter]]jine the size and confi?u-
ration are also included in the i'iies Di"D'>XX.LIB and DpBy-xx.LlE. In systenis
without extended n|e!íK)]"\'. cj!" to conserve space such as when bui ídin" aS\'>.'Lc: ñ)
--
for the L)l)q', tracks. thix lIKt}" be disabled by setting to NO.
HARDDSK -Include St'S! Earc7 ui sk 1)1" i\"éí"" Set to YES if yoz \\"is}! [g) iriclu': lt'
the ability to access Hard bi:sk Di-ires. In afloppy-only system aNO entíu"
mi lljil1il}!i7L !3ÍOS code.
HDINTS -(Sñ"stetr, bepc'ndení ]In sonic' systems such as the YASBEC. Intcrruj"'í--
driren Eard !9is!: C'L)r]trc)]¡E: ]"s using D?4'\ transfer capabilities may be used, }f
Uq'.j \\'isfí to use tÍIÁB type of' drirer specified in the file HARD!-ia.Zbñ insttuui
of the norntal pol led rout ines included in HARD-XX. Z6'0. set this option to
TRUE. In llÍjf,[ cases. t!íi'3 drirer will require more Transient Pi"q2t?jí: Area
since 1,2!e Interrupt Handling routine rriust be in Common Meinoí"y.
CLOCK -Include ZSDQS Clock Driver Code? If set to YES. the vector at
BIOS+4EH will contain aZSIX)S-conípatib!e clock driver with the physical coík
contained in the TIM-XX.Z80 inodule. If set to NO, calls to BIOS+4EH return an
error code.
TICTCC -(Systeríí Dependent )Use pseudo heartbeat counter'? This feature' i:-
used in systems such as the Al1)P1"O Little Board and Cornpu/Time SBC880 which cX
not have an Interrupt scheme to control aReal Time Clock. Instead, aserie.K
of traps are included in the code (Character IO Status polls. Floppy Disk
Status pollsl to check for c)\'erflo\4' of al-Second Counter. It is less desir-
able than an Interrupt based system, but suffices when no other method is
a'\"ai1&b!€'. Set to NO if' not needed.
QSIZE -Size in lüytc·s of type ahead buffers controlled by BL'FCO3" arid BUFAI X.
13
TAILORING B/P BIOS
REFRSH -Act irate Dynamic Refresh features of ZI80/HD64I$0 processors'.' In
some computers using these processors such as the YASBEC, reXesh is not
needed and merely slows down process ing. Set NO if you do not need this
feature. If your processor uses dynainic memory, or needs the signal for other
purposes (e.g. The SBlSO uses Refresh for Floppy Disk dma). Set this to yes.
Z3 -Include ZCPR init code? Since aZ3 Environment is mandatory in aB/P
Bios (which now "owns" the Enrironment ), this option has little effect.
For assembly of aBanked version of B/P Bios, the identification of various
banks of memory must be made so that the various system corriponents "know"
where things are located. Refer to Sect ion 3. Iabove for adescript ion of'
these areas. The BNKO value should be the first bank of RAM in the System
unless other decoding is done. The following equates must be set:
BNKO -First 32k TPA Bank lswitched in/out)
BNK1 -Second 33: TPA Bank (Coinnion Bank)
BNK2 -Beginninp of System Bank (BIOS. DOS. CPR) area
BNKU -Beginning of Bank sequence for User Applications
BNK3 -Beginning of Extra Banks (first bank to use Í'Ol" RAY Dist l
BNKM -Maximum Bank !\"ullíÉ}¢'1- assigned
3.4 Configuration Considerations.
when assenílñ 11k! a\"¿1"5ion of B/F' Bios for intesu: aíion into an I'\ÍG file". size
--
of the res'-íit iñg' irrlas2c is not much of aconcern. so you need not worrv about
¢
uiiñcn" issues of size. For integration into asy.stem for loadinµ onto diskettt"
boot tracks. how·'tu'er. the limitar ion i> very real in order to insure that the
CPK/IXjS/BIOS and Boot Sector{ s)can fit orí the reserved sr"stern ti"ac!>. ]"u;'i -
.
cally. aliníit of s!i3jlt!y under 'l.Sk exists for the Ellos component. v\hetí the
MO\'CP)4 flag is .set 'tú yes for this type of assembly. warnings \\"iti be issue'S
when the image exc'eeds 4352 bytes (the rtiaxiníuní for systenii-i with 2boot
records) .anti 4480 by[eb (th± rnaximuní for sj'stéñjs with asingle boot recc'rci l.
Achie\"in£ these liiñts, ofít-"n requires. disabling !ííar}: \" the features.
The first thin;; you shouici Jo l)ef'c-)1"e assembling the BIOS is iq back up thc
entii"e disk, then cc'}'j" only the necessary files onto awork disk for any
editing. After setting the options as desired, edit the hardware definitions
in ICF'G-.Xx.Z80 to reflect the physicat characteristics of your floppy and harcí
drives. as \\"€1} las any other pertinent items. Then edit the lWical charac-
teristics for your Hard and Paw Drives (if any) in DPBHD-xx.LIB and DPFM-
XX.LIB. If you do not desire any of the standard floppy forrriats or want to
change them edit DPEÁLIB and/or DPB2.LIB {if using auto selection) c)i"
DPBRAM.LIB if you are using fixed floppy formats. Finally edit the DF'H files
to place the !oµica1 drives where desired in the range A..P.
Decide whether you want to generate asystem using the Image file construct
cleve loped in support üf B/P Bios (BPBUILD/LDSYS ).or for integrat ion on a
floppy disk's boot tracks. If the latter, you probably will not be able
hare al! options turned on. Foe example. with the MicroPfinr SB-lSO. the
14
B/P BIOS TAILORlNG
fol lowing opt ions níust be turned off :BA\'KED. ZSDOS2, BIOER!'4. FI-OPYS. KÍORLE'L.
BUFAUX and usual Iy el ther CLOCK or RAMDSK. As an aid to space reduction.
conditional assembly based on the MO\'CPM flag automatically inhibits al! but
double-sided Flcippy forriiars front DPB.LIB. If conf igurinµ for Floppy Boot
tracks (J1C)\"CP: 'yt flag set to TRUE). awarning will be printed durin? assembly i!'
the size exceeds that available for aOne or Two-sector boot record. Us inp
the BPBUILD/LDSYS method, you níay vary nearly all system parameters, even
making different svstenís for larer dvnaníic loading.
'
If you are using aversion of the B/P Bios already set for your type of com-
puter. you are now reach' to assemble, build asystem and execute it. The on!r.
rerríainin3 task would be an optional tailoring of the sign on banner in the'
file cFlcr)T-xx.z80 and reassembly to a.REL file.
For those convert ing astandard version of the B/P Bios to a new hardwarti
system. we rec'onímend that you begin with aFloppy-onlv s\"stétñ in .\'on-Bani f-'í.j
n)c)áe then expand f1"Ol1! there. The easiest way to test out new versions is tc·
use the Systel)! hiíaµc (ING fi le) l))oc]e. then advance to boot track inma! iations
if' that is: desirt·j. Enhanc'erl)ents that can be added after testing prerious
\"él"3 ions my Mu.) add Hard Di" i\'és .KÁ'\( Dr ive ,and final iy Bank ing.
15
INSTALLATION B/P BIOS
4Installing aB/P Bios.
The Distribution diskette(s) on which B/F Bios is furnished are configured for
booting frcm the vanilla hardware for the version ordered. A9600 bps serial
terminal is standard, and will allow you to immediately bring up a uiiniínai
non-banked floppy disk system. Due to the variety of different system config-
urations and size restrictions in some versions, only the Floppy Disk Mass
Storage capability can be assured on the initial boot disk. Where space
remained on the boot tracks, limited Hard Drive support is also provided. and
in some configurations, eren RAM Drive support esists.
After booting from either an estaMished system, or the boot tracks of the
distribution disk, format one or rriore fresh diskettes and copy the distribu-
tion diskette(s) contents to the backup diskettels). Copy the boot traci-s
from the master to the copies usinz BPSYSGEX' (see 6.6). Remove the master
diskette(s) for safekeeping and "work only with the copies you just niacic.
L'sinF the backup diskette \s"itíj the 13/!"' utilities on it. execute BPC'\TG in the
Boot Trac: kconf igurat ion mode (see t3 .2).adjustiru' all the opt ions to \"c)üj"
specific operatin,z enrirontíient. when you have completed tailoring the system
it is ready ícr hooting by placing the diskette in drive A: and resettin;' tht-
s\'sté!1i.
.
Thc· saníplc' STAET¿"i"'.CO?\: filc on the distribution dis!: will autontatically exec-
ute aseq'iience of in>tructiom u,'hen the system is bocneci. It contains various
instructions 'Áiic'h further tailor the systení and load portions of the operat-
ing systeni 'ñhict arc' too big to fit on the boot tracks. The default inxtruc'-
tion sequence is:
LDDS <-- Load the DateStainper style !ilc
Stamp routine and clock
LDR SYS .RCP,SYS. FCP ,SYS. NOR <-- Load ZCPH 4En\"il"onn}ení seg|}|erttµ
for Resident Command Procesxcn".
Floñ" Control Pkg and K"aH!ec] Ijirs
IOPINIT <-- Initialize the lO Processor F'k?
TD S<-- Promj'z for Date and 7"iíííc. Sz'l g}|
Alternatives are to use TOL'
(6.21) or SETCLOK (íml8)
IF "EX MYTERM. Z3T <-- If the file MYTER\!.Z3"!" does !tot
exi st .. .
TCSELECT MYTERM. Z3T <-- ..select which tern]ina} vou hart.'
creating aMYTERY.Z3T file
FI <-- ...end of the IF
LEFI MYTERM. Z3T <-- Load the Terminal bc'l'inition data
If you wish tQ aite: í" any at' thé">é initial instructions to, for example, inz-
tialize the RAJ! drive usinp TNlkAMfj. add File Time Stamp capabilities to it
with T\"ITD1K or PUT1)S anc! copr soníe files there with COPY. these rnay be added
with ALIAS. valias. SALIAS or other compatible files ar"ailable Írorií the ZX\"S-
TIN oí" ZCPR33 area"í on 7-Nodem
16
B/P BIOS ÍNSTALLATlOk!
After the initial systeni is' up and runninµ from the Default boot Track system
you may eu: pand the opc'rat ion by penerat inp sµ'"s1éws for diíi erenr purposcs in
orcier to pain the' mnst acNarítage from your system Many types O!" instal lat ion
are possible. the siñ"tplc'sí of" which i.s aNon-Fianked systení using on!t" 6J-k: of"
the systerü>, ii}errLory. ai!of' which is in primary manory. Such asysterü uses
normal Corrírnarid Processor such as the ZCPK3 .x i'aníi ly, and aNon-Bankeú Operat-
iM Systerú suc'h a-s our Z.SDÜS \'ers ion j. Non-Banked systems may be instai led
on a Disk's boot Tracks. or created as an lmape File for dynamic !oadinp Usi;1;?
the LLJSYS L"tiíity (see tn!5).
Banked systems MUST be' created with the BPI3UJI..J) Utility {see 6.1) and íoackc
with L1)SYS (see tn151. The technicµes to inanaµe differenr níemory banks tr
forní acornMete ()perat ing Lm"ironment are rather intricate and are best hciñ-
died by our utilities. Marre Imaµc' files may be creared and loaded a±: neecic'.í
to tal Jor \"out" .syste.ni for opt imum performance. The fol Joy\'in,2 scct ions, dc-
scrihc tfíest' \"aTic)Us·. types of" instal lations in deiail.
4.1 Boot 7rack insta!latior: .
t'"r l:lC):';[ Oí" u"-' cu: if,t '.ns C!'"-! coríir'ar iMe cc)niputer> to beµin c>: ec'-ii trí.í aiñi4
OpL-}": 7Tin 'S: }'ík"tt::í',. Arr¿::'2I¿_t'!l ñídS,E hC" placed on aspecii led ?í"c[í Üi c: f" Á!jx"'j cc-
Fiar.-? I) i"}1)1" !\"'-. .>:t"!Trli¿?l !\". tM- if' ir>: [t\\"o c'j' three' t:mcl:s on tli'-' cl l:'A ¿i ;":;
}'E'y,ej"\"(·c: fur' ILR> p'!:"!)':'$-.Fj: m"': lát"tj' reft'rred lo as' t!je "tfOcjt 'lracÉ: :'i' .>inc'í' It"':
spact' .>(1 cit {'rj,.·¿í t: £Y'Áj. ;"í'i; !\" jü-"i :" icted. rieitMí" acon}i)i¿'zc' íí/l·' i:io'" :uu" ¿.
l)aT!l"'jíi i1'-.',¿: ii·-:1{j"1 'c- }3C'¡""bj|)'£', ñ'"tca'"'i. asca !L-ct-dLj'\4'!I svsten' ruuU, 1\" c'cj'j 1\"
ak'r'it to tÍ'l..)-,{-.' C1ii"7"-?l?í :Vj;'j tl>¢i' :u>c-d u) start. [ht" corlípuTU'.r anc ;'.r-'7"í"í ;. .thí
(")l)L-: "at 1'í7 >'\"'4tt.:I'::. ",,' :t)j¿jj Á"fj'!" S\"StÉfTi", joa(l¿'(! late: "as nce': kcl.
}iycui áj"t: '-1"Á!', !¿ii !'rL'-c(jlí[ l7\.|rc"'-} \"'d1"ú icjñ c't t.s./l-' bío:,fCj;" rout' h¿ir'.}\\'¿'í y.\". '-.
my sinplr cori ;ñi_iÚ u" Ubt' t)'zt hoot 'l'rac'k s;j.zt cáí troni tiic di'st rihu.t 1O!"l cíi 'ai' i; ::. ;
lüy ¿'::){""\"L[íf' ihú :·7\">,tt'{': ¿e'-- tic">,c3" íhúci in Sect ion 4ahm_e us.iríg Fií'b\.SG!ü tt'.. -'
(i .{} )' .It yüz: ¿it-Ct u) ¿";lj" "o!" c)tlíÜr'n'iµe cusncunze the Hoot Trae'!: system. yc"í
ñjlj>.t a°-:3L'!i:!}l{. t" !K· !i,,.'i A:-:>(tl"¿i"cc" sc'tring certain Üi" r-ht' eqL][!'Lc'>. in th'i: j);.í---
',: c.! íl', É'l It: t... í?7SU!'c ,'í ccu"reí't t,\"I)¿' CiÉ" SJ'"Ít€'ñc Tcj asBti'l!í!-)ie- aFmt"t "!"i:ocÉ
g>y"t£'E,. tli'. [j!/.i'·,'?. ilI}|'["'rt(g;]: t'C!Ll;i[C: '1 arc':
MOVCPM Set to YES
BANKED Set to NO
ZSlX)S2 Set to NO
()ñc' eleníent of I3anÉ.c'c! Sysittw> is arai !able in aBoot Track insta!jaUorí ii
a("ldjti(»níL] níenioru 17, aí"ai1ah!e, and voui" B/F' Bios rout ines support sucn ,"1
feature. 'rm Ir teature re loach the Command Processor froin banked memory iri-
steaci of tI"cj!ít the hoot '] racks of' adisk, and g.eneral ly produces less C'Mz
(takin: 2Ie: ics space on the boot Tracks) and executes faster. It is set u'iU:
FASTWB Set to YES if desired. NO if V\arrn hoot froíü Ííi -.i
1,'"
!NSTALLAT!OR É3,'P !'UOS'
sonic ot" the ÍeaLurt!i that gt'ncrai 1\" nteci 1() Mdi sabl c'ci tí"\ sc,"Éi l! a !,3: t"í jluí"
srstem are set as:
MCRDPB .Set to NO
DPEJ8 Set tu NO
MCRDEV Set to NO
When at least these equates and any others VOlj desire to chansze (see section
4} hare been wade to the component fijes of the system assemble your BPBI()-.u:
file to aMicrosoft standard REL file. This output t'ije may be used tCj o\"(-'j_-
lay the Bios portion of the MO\'XSYS.COM system generation urilüy (see 6. f(µ)
iurnished v.'ith your distribution disk. or an equivalent prograni provicied \\itt!
your computer. MC/VXSYS or its equ A"aíent (MO\"CPM, MOVZSYS. etc) iu aspecial
proprani custcmii zed for your parr icular hardwire containing a) }the Operar: ing'
Systeni ccwiponents "n'hi ch v\"ií ibe placed on the Boot Tracks, along wi th arou-
tMc-' ro alter thí- internal aíitU"esses to correspond to iii spú"cified n1{í'rl}oI"\" s'if':;.
'Ec) Ad':l th't iil'". itiíj: "-. you just ?4sseÍ!j!)j eci. execuít' ]\'S'1'Ai.i 2(see proct:cj'jrc:-q !rí
b. 1-ll :' s.peci Í'y it2,l' your conipuíc·r" g):(:)'\":[b\"h or equiva Jc'rit prQ7ra: 11 and tüí Iq)'.'. thz
pi"cmí;"1 "'L() o\"¿'j" !C1\" tf'c rieií' 7{jaq. ()nce l!gs'r·'ii !2 ha": sa","ec! í: re kjc:íta!)}€" or
aDscÉute file'. \"ou í2!"t' rt:¿í(j\ tú creatc aboot díi:k containing the rímaÑ'ic-'i
sy-it SIh.
"l !' you u.qc·c! [!"ít-" cQr|!3ii2n[.i INSTAL12 [t' insta i i sí'sterü .se>'níc'nts (i!-! U.)'\'"¥ jjY> i":
ecl'g}\"¿·'!jL-[?¿ rí'"')?Iarl: .\"Ütí ñíú'\ t't" él rstcreate an .-\bqoi\}te ·$ysíem )!L: F(iF.! lilt-'.
S"t mí-' the fuñe \.icm: il rU)z"I ion c/i" your ñé": \" proµraní i: í: "kíít jg¿j, To Ú2l' o: "]!.',Tí:¿j
j!C)'\"XS\": S oí" cc: :ira Ú"J'l .liu.t: the Líít"ti)c')'_j e:':piu irr: ci iri you: "c)!"9 giruí! cjc)cuníen[¿ít 10!"
to güneratt-- ¿i El"",' :4\":-Te!}i. i'.: l.t: .'¢('"'\ ú.: -·jt:, Ú"'il cQn'tni(i!l.: !im
MOVXSYS nn *"-- 1"c'l")l¿icc' pil)'..: :$'j> uith yc't: r\-Clí'Ccj;,
4·
'r'jP-l"t nn i.n íh: 'si?'l- tií¢j' s:\':'['j'tlL (ty;íucai !\' 51 íc'; amoác'rarü bcmt s\"y.,',¿'I}'{'.
7ñt- c¿.>r.€'r! 4.. [ti'! !-- tií':'prcuzran', [(i íeíair, Íix-' i|1"ía?¿' in rnenmry íi: ñnc't \\'i"i iz
u' aGi: ik !:it-'. 1"crj héá\" ñcY' U: hp$ú\"ú\í-iÉ.': \" tc: write the ncii im;zc- to the s'j-5ú-": ;
u",i·í'?: :' c'; \"tDGi ;: "'.'":'- Cii.4c'tii-. l.tt.) ti"íij-. !')\" C'ú:t-'C'it irij" l6|'S}"SLil.-\ with no ar?u{l£ent: 7
atíci i:isuc' ¿'¿ :" írzj; le t'íir: ":aj- !ct'ztírn v: M'n asAcci for thc :>uu?c€' cjí the híá: -'é .
It you use.: the conmantl INSTAL12 /A to install repkícenienc s\"stetñ segrüent:
c)\"éj_ a Sy.stt-'ñi íníagú fi it'. or used autility which wrote the new image' ttjj a
disk file, tlÑé FSPS\"SC_á: .\ tO \{'ri1€: the iniacze tile to the systéíri tracks of yout"
boot disk. The proper colrlrríand i s
BPSYSGEN filename
where filename is the naníe ot' íhc· disk file you jusr crúated by execut in?'
MO\">: S.\'8 or equivalent with output to aciisk file, or with INSTALA oí"! an
existing image Ítlc'.
li rM s\"stéñ": }9i 'Y\"["ir{L'rí Tl_\ al"farA I-)is!: ,and vour sy">[el1í supporr± bcmrin;z i'roií,
aHard ?'i"É "L'cf"t a'- tíat: '\i'ShiÁ .\"o'i! ríorniai 1\" must ai tor the cief'aui t!'ocá
Sector frotz tlít' cL: 'l au lFiopr"" i'Ai. !4("F(\í sc'\-Áoi" coma int'-d in M()\"x3Yh (-:!" tíqc "j--
j.q
V ~'
B/P EllOS INSTALLATlO!ú
alent .Thi sal terat ion isaccoriipt ished by HDF1(X)T {see 6.9) whi ch rrtust bu
customized to the specific ljarciware System used.
lifter the ahoue act ions have been completed as appropriate, tal tor the Boot
Track systent to reflect the desired starting configurations with F\PCNFG (xec
6. 2j.Such items as the desired Startup file name, Bank Numbers (critical if
J'ASTWB is used). and drive types and assipnments are routinely tailored at
this point. When the you have finished this step, test your new systení by
resetting the systení. or cyclin7 the power and you should be up and runnin?:
4.2 Non-Banked Image Installation.
ANon-Banked system may be installed as an Image File as oppoxed to the basic
Boot Track instal lat ion covered in 4. 1above. To create an Image File. U"'.'!
must hart' Fí!-.L or Zi·: Lvers ions of aConimand Processor (ZCPR3 .x or equi va!ecí.
recQrlínjencieL! ;t .an (jperat im (ZSl-XjS. z-a-. recommended j.and aRLL vers icn cE }:
/'}
bíos tot your srsteríí assembled with the MOVCPM equate in L)Tii--.íx".Lfb set tú) NO.
tjther equa[e: 4in thi .s fi .le may be 9>€'[ as descri bed above" Íor the- lsüot 'j raci
sysíerl?. Since ímapc' files are ncñ as constrained in si':'e as is instaiiaticm
for Hoot '! rad ñ. níore ieatures may general ly be act iuateci such as F.rror Mu-: -
sage: m RAY brive. acjcii t!ona1 Hard íjrive partí tions, and complete Floppr Forn',it
srúre.m "i he' ní,i!n precaut ion here 1"? that large ñard Drires v\'} !]ra;'ñd 1\" cáú','?
si gríi f"} cant iQSs"Y í".·jj Jl'rari",ient Prograni Area since' al l D1"Í\"ú parameters níust bt.'
in !)rQtec[L-·{i iii.:íh lííC'fltz"'CG a|")o\"t' the' tsioi .
Aftc-i ti"r' i¢icís. ha'". lY'f: ri axy)enÉ!"!ec!, an iníat'e t'i le niust he procjucc: í. Tñi :-. '".
m
acconinl ís!n'u ':j; Iñt· b!'jji-_!!_l-| tiíity (stc tul). Set the Piiti- namú", in \it'ñí: i
ft-'i .!C'¢:'T o:"iiy ¥cjl2-F'1?Ln.|: €'(j Í'iiee, (c/t ni.irmnatly barik: ed bios. if' FAs"r\'Ilí is set ¿t"'.
YES'. iü'fi It-t li/'iÚ- ll)' ci/_) rhe wor!: .bincc' rhc· standard .\'on-bc!ni: E'i"j .v\>j: 't.
se!Enlú'nt 4are ñoj"ñL": ii\' sui tí" the 'standard" CP/ji 2. 2sizes. you iiíay aRs\4'L"" tiíj
"C'lütCiS, ize' cµ': "r;'." \Z'íÜí 12 Yto onrain the níaxiríiuni Tnínment. P}"o?ram A:uni l") tlí:.
rt:"-uit|n£ syg·-[c:Ii:. \i'!}er! F$!"F'i[ f I.L1 coníp !t"t e's ltswor!: .aÍ'i le .norrria jiy'i: iti'\ thi'
ciefauj i íypí" gñ' .iV i. \.\'i i !í"iá\ cbeen placed in the current ly |op,s?e(i !)T i\"t/'i "·t7"
íi!"L·Á an"i \"ín-; ¿!j_t' l"C'áC'\" tCi pc rfbr: íí thr-" next step in preparatiorí Cji' the' \()!"1-
banf.t.- l!iñ?A'c .
.'\..q i', !Üi t!'it' boot aracÉ: insíaí lat ion covered abo': e. severa! svstem item: 'f}i: -l>;T
he raí !orccl bef'orú the jnia?e niay be safely loaded and executed. This is done'
br cal ! ir}é7 EF'CNI""G with the lrnape tlle name as an argument, or specify l!lÍ¿¿?'.'
confi;;urat ion frorri the interactive menu (see 6.2). Set all itetüs as yon
detire them in the operatiñfz systerñ, particularly the Bank Numbers (if" l-"AST"·í"
is act ive). anc! the' Disk brive characteristics and assignments. When this ha":
been sar isf'actori !'," coríípieteci, you are ready to load and execute the ne\\ iy-
created .S)"STéñj.
Insta! ling an Miatzc- Fi le (deÍ"ault file type of .IMG) is extrenie>,' easy. On i\"
the ütiíit\" LL)S\"S.CL)Ñ (see 6.!5) is needed. If the file type has not been
chanpeci f:rorn the default .I\ltL only the basic name oÍ" the !ma?e Pi le ríeecj r't
passed to 1J.'S\"A \'\"t'"ícñ €': [ecu[e'! as:
LDSYS IMGFILE <-- Where l,\Gl'iLL'. is your írriagt' t"iít' M": f!ít-
19
!NS7ALLAT!CN B/P BIOS
The operat iñ/z parameters of" the currently-executing. system art- first exaniinc'íi
f"c'l" suitability of loading the Iína,íze File. If it is possible to proceed. the
lmaEze Fi le is loaded. p! aced in the' proper memory locat ions .and conmancieci tí"j
begin execution hy cal i1f"!9 rM H/P Uios Cold Boot Vector. The Cold Boot
(Bios Function O) performs final installation, displays any desired openinp
prompt and transfers control to the Conwíand Processor with any specified
Startup file for use bv aZCPR.i.x Coniniand Processor Replaceníerit.
Since anm-banked Image' File will probably closely resemble that contained on
the Boot Tracks. the sanie STARTUP file may general ly De used to corüplete the
initial tailoring sequence. ii" adifferent file is desired, the Image File
may be altered to specify adifferent file using BPC.NFG.
4.3 Ban ked Bios, Non-banked System lnstallation.
vvith the B/F' Bics system, an Image system may be created and loacmi wñich
places port ions of" the Bios Only in the Systerií bank, retaining anon-banked
Operating System and therefore maximum compatibi lity with exisninµ app! ica-
tions software. Afew thousand bytes can normal ly be reclaimed for Transient
Pro?ran¡s in this manner, although iarze and/oi" increas inpt numbers of iLj?!c¿íl
drives will st !j i1"t'·¿!tj/: e'FPA space becautíe of' the need to store' Ai )oc'atit"m
Vector iníorníauon in (_'oñirúoñ Kleííic'ry.
To prepare such ti s,ysñem. mníj"ly t: ci it tht· rt£: t·j€'ci bios ii !eg: i inece.s",¿tl'.' ir"i t!
particular en"¡[)}\asi: 3on thü í)F'-µ: ?:.!,¡}i íile wherú tlit: !(?íjc)\\'inµ ec!Li?.ze>} lñít:· " 1")l·
set ax:
MOVCPM Sgt te" NO
BANKED úeí Id nis
ZSFOS2 set to NO
Since hr,nketl wlc'nic}: "\" ,\/t"S7 be a',m iÁ'/ís icu" íhis: Lvp: of insrai lat ií'n. you "\',"1 :'
probably wAñt t}"ie j"¿;">t "\i'áTl!. !SüOt tüeízure aí"aiiabie to niau: ini:úe system pt'"Uí"': "-
nianc'c' .To act 1\"'Ut-' this o!:"Ljon.. set íht' j'c)|ío\'k'in2 equate' as:
FASTWB Set to YES
When the editing is conípiete, assemble the Bios to aMicrosoft .RLL fi le v\"itií
an appropriate assembler such as ZMAC and buijc! an irííaµe system with HPb\."i!..!-)
(see 6.1) c"ñanpintí the E$io>: file riarr,e in menu !to the name of the ne"ñ'ly
creared Bios file. ÑéFt ., coríÍ iµire Üíe default ccmdit ions ifnecessarr v\"it h
BPCNFG (see (l. Z)and you are reach" to act ivate the new system in the saítie
manner as ail Iniaize file" by calling LJJ.SYS with the lma?e file arµument aw:
LDSYS BBSYS <-- where BL'SYS is your Image Fi le Nanxz
As \'\"j th the completely Non-banked systerú described above in Sect ion 4.2. no
ne"«" requireníems are establ ished foj" aStartup t'i le over that used for tht-
imt la! bc)c)[ S)">téÑ. since bcmli the coníniand Prmessor and Disk Operat tut'
Sr'sterti are unhan): eci. an'.i dat :iareas needed hy app] icaí ion proµraiír arc
2(1
B/P BIOS INSTALLATION
placed in the System Hank. As with all image Files. additional features' such
as ful ]hios Error MeAsage.5. more extensive Floppy bisk formats ancl F:.-'N c!ri\'L:
may µenera! ly be included in the System definition prior u) assembly >iñcé th:-'
size const raints of" Fsocn 1"rack systems do TiQt apply.
4.4 Fully Banked Image Installation.
To create asysterii takin2 níax"imuní advantaµe of banked memory, aspecial banked
Operat 1112 Svstení arid Cornmand Processor are needed. These have been Íurnisheíi
.-
in in itial form with this package as ZSLX)S20.ZRL and Z40.ZRL respect i\"é ly.
They use the banking features of B/P Ellos and locate the níaxiiríuw practicable'
aníount of executable code and data in the System Bank. significant irñpoir--
tance to maximizing the Transient PrQRram Area is that the Drive Allocat ion
Fsit maps are placed in the System Bank meaning Uat adding large hard drives.
or mu!t iple dr.ires produce only minimal expansion to the resident portion cji
tht.' F'ict>.
t\. l-uí 1\" bank-c·d !sic-ri i> creau"'c1 H\" e(_íitin? the: LÍ,/F' bicc> fiiú: .as. neech-ci \("p
cuxtonü tm' sy>tt'ní t';j yotu"" (.jc'si1"eµ.. Insure that the foRowiñ$z i-)í: }'-X"µ:.!-;.t$
equates, are sc'í .iu:
MOVCPM Set LCj NO
BANKED Sti·t to FES
ZSlX)S2 >eí l(") YES
:\>,sE'R"íF_í!e ílit' 1"e"'.j) t'í?it j-s,/'r-' !-UC: -, tu a'"licrohuíí .RÍ".!- t'i!t". Fui id au ini'ij'é i'(ft'
\',lí'í !'i-'ií\"lí.i) tsg: €· (}. i,' and ccmi" '"re the produced Iniami' Ii le with F{µ('!\"j'lT ·
('.y.2l.\\ÍJ<-'t\ \"ou are conl icier ithat ai lciefaui t set ein,sts haí'e fjée1") Ií"l,i'.Á". act i-
\'tiíe the file 1)\" e!"!t€"j"1!l,: ?:
LDSYS FBANKSYS <-- wht,·rt· FbA!GKS\'S is \"cu1T 111:¿"2jj iiíí-' ñÁli:·-
Yt: \"t-' ¡"¿'t l(lii'i'€"!"€'{"]c'E'$ nit-n" exjst in the Startup fi le useci 1'[)]' ai'uj!y banf: c:"i
sys Lea),. ("jt't]€".T"¿i; 1\" 1ht' ('f]¿i]]?ts aIÍlc)l.lnT to cíe let in,z Íl€1'hS such ¿jj' ¿"i lile btatí: ;"'
Iíli-K}'j It' I't'l" íhú ;\'L_)7')-l)?.!]: ,í:('} Zsi: ·' '>1 v,'i,i ch is not necessary \i'iti"í th-í tul ly-i)a: ]!.:Ú(:
zs!K.'y. :J ami :Z:Ó. On i\" íh': 'tcpt" CU clock Dééci be spec i í'icúi 1'01" :/µ,!-K)>-r9. i- u! -
thÜrr: ít-3!_Ú. i, incc tñí-- 24Ü {.'Qn}7l}an¿ µI"c)'ge.q,sLj¡" Replacement contains lW.jSt coR1HÍcjñ I;'-
uSétí c'oníl7larít!f pa Uwrúcl U'cmi anuniber of Res ident Lonnnand }'rocc'sg.c)T IK'.'É'!
pac!: aµ'ei. .there ig: riornia liy no need tQ load an PCP. Asimple Startup fi j€'
t"ounc! aciequau: '("lurin? ckí"eiopínent of rhe fui ly-banked LI/P sysreni is:
ZSCFG2 CB <-- Set zsrms 2cLock to bios+4i'.i-i
LDR SYS. FCP,SYS.NDR <-- Load ZCPR 3Lm-ironmenr sé{2ñNñt>.
for Flow Control and Narrted tjirs-.
IOPINIT <-- Initialize the 1() Processor PU
TD S<-- Prompt for bate and Time. Seí CIR
Alternatives are to use Ti)l..'
ltn2D or SETCLOK í6.lX)
IF "EX MYTERM. Z3T <-- If the fi le MY'rtiK\'!.z3T does. N-u
exi si .. .
TCSELECT MYTERM. Z3T <-- ..select which terminal you ñá"\-¢-
21
INSTALLATION B/P ElOS
P
cI"eatin? a,4Yl'f: KM.Z.3j iijt:
FI <-- ...end if the it'
LCR MYTERM .Z3T <-- Load rhe Terminal I)ef ínition ckita
since the regui reniení s, tor afu lJy-bankecl sysneni dit fer signi ficant ly troni a
non-banked one, we reconímúnd that you use adifferent name tor the Startup
file .For exaniple, STAR'F(JP.COM is the default name used with Boot Track
sj'siems for initial operation. and with Hon-banked Image Files. whi le S'í'APl'ji
may be asuitable naníe for the script to be executed upon loading afully-
banked system The name of the desired Startup file may be easily altered in
either Boot J'rack or Tníape systtmís from Option lin BPCNFG (see 6.2).
An option aval table to start f'roiü alar?e Image File is to configure aSíartuü
file t'or ex"ecut ion by the Bg")q'. Track system containin? asingle command. The'
command would sirüpíy invoke Li)SY5 wi th the desired banked Image Fi le as an
arpunient such as:
LDSYS BANKSYS <-- 'Áhc-re ZJ,'Ü\"!¿: x}'$.}3'lti your Im: 2c ti ji.:
In this case'. neme' oí' the' noríwj ini'rial izat ion sequencer. cited above \'v'Cjü id hi.'
executed bu the Kjc)í 'l"l"rt¿}¿ s\"sre!'ii. arm only rhcmc contained in tñt- S:
¶[a!"¿ul"'} íí'f"
b,·L'\"Ñ.s\"S.}\Í(_; \í"c)u|cj ()'jc"á7". uther opt ion.s abound and are lei't to tñc c()rÍ¡B¡Llu it\"
to im"í'nt na: ': co: íil"' i.rmz .!Qi?". a'íü sequí"ncí": -i.
4.5 inCase F'robierric...
\'¿"jg :C' \\'_· :·l[[t^'l"Il"p'q'("¿ tO oi: íl i'"" ¡'i"\"b"Ú\"tz¿rt"q j\:'" U-'f- 'qi:íiCl1"ll\" ("i}' 11')".U_í] ixt l()!;'b '.it-
co: "!$íl:i'.'reL.! fe¿-¿": i_)É¿'. tuc'i l- Hit,-.'" hC t")¿c-cí: {:,7rt:5 \'jñt rt' µ"c'lj l!i?i("l\"e.i"Lc[í[i\" tjri..G
y(jurs: Ef!í in ¿i 1"{"): "7 it .C..í ".": ítj'r::' \"Üú .teeii, [(' iui': c' lost 'hc ahí i:zy lo gt't you i"
S}"w[("iit ll" á! 'li, l¡:drí;l}I"l: .
PROBLEM: \',,'j.á"! ¡(.3¿iL"]ij]2 ¿ÁTí .|'"j'.f i"j íc" i', itíz L!)S\"$. the screen clispiay> t!:t-' !.!'>i>
banñt-' i" .:iyste'n' ¿¿(l(.f¡"¿"Yg.t-'"·}, cmci halt s'n'ith the' last screen ci1spleíy!r)F:
. . . íoac!irí>" baríkeci systeiii .
-- SOLUTION $Ljn}f3t"l]il")L' i" rmr set correctlu in the Fiox. S:
iñCr ali Urít':
after the iasí one ci ispia'ied are pr itit€'ci trem the newly-loaded fsicj: ',. ()ñc"
thu ms-t cQmrl"Á')n caumi !-" tlj17 thi sprobleríí isincorrect bank nurüher set rjr'i">.
Use the hidcien selecuon in Menu 1of FSPCNFG (see 6Á?) to verily that the
cccrect bank nuníbers hare been set for TPA and S\"Stéñt banks. Anot he rco[l}!í?c\n
cause of this probiein jq incorrect sett ingú fctr the Console port. qi" a Aétt inp
in Ue I()BYTE which directs Console data to adevice other than the ont in-
tended .Use Menu :' iÁ'í-2\'t'G to properly set the IOBYTL and the console paranie-
ters.
PROBLEM: You boot froni or load aH/F' Bios symeni t"rom aHard bri':e. ar6
irrúííediately after starting. the systeni attenipts to iQZ ontm Floppy brive (-i.
-- SOLUTION: Thi' most common cause i"or this symptoni is: that the des.i rcd
Harci bi"irt.' and Pjc)i"'r.\" iú"i\"e clef jmtion- were not swappeá to define akarci
hrirt' l'arr jtiün ¿"jy, tñt: a: cit'1\"t. Usl- í\Ñ \J-C.f (See (}. jl,Mena St.cj eb: chI-in;"-'
22
B/P BIOS INSTALLATION
cíi"i\"és tcj the desired configuration. Asimilar situation may exist wherú a
Hard T)rÍre is activated imruediately after booting wheri aFloppy drive is
desired as the A: brivc'.
PROBLEM: The computer seems to boot satisfactori ¡y, but after atew proprartís
or any program which executes aWarm Boot {or entering Control-C), the system
goes into "Never-never Land" and must be reset .
-- SOLUTION :This symptom is most often caused by an inability to access
and load the Command Processor. This is most probably caused by assembi iñf'
B/P Fjios with the FASJ"V\F. equate in DEF'-XX.LIB set to YES when the systeI!l
contains no extended memory, or incorrect sett ings of the Bank k'urríbers. To
check bank Number sett inps, use the hidden function in Bpc,r'pg, Menu l(set: ·
6.2).
PROBLEM :When doing acold Boot froní aHard Drive ltroní Power up or Ñeset ),
the system goeb to a!'ioppy L)]"j\_e before displaying the initial siftñ orí rues-
sages, and remains logµ'ed on the Floppy.
-- SOLUTION :1'hi>i is mc'.st ofren due to rour forg;euing to t'-uj rho Rljfi(»):
utiiiÍj" on the Hard iú"i\'€' fsocjt system aiter appiyinµ it with 131-'SYSGt·.X. Nor-
ml .li'. sysíeins crt'.: ttt'd ',\'.i tli ttO\j: b\"S contain aí'íopy" l.'isk tiOÜt sector Uiic!.
". ili load t!íc" ini ti,,: ')rt'rsn iti 'System fj"oñ? aF!opj^'y. HL)t5()(-)'!" ts逷 (). glni{): _j !-
fies' thi:-, reccm"i on aspí'cii"tt·d i-i: ircl brive L'nit sc) that the Operat!n? !?\"Btt: ::}l
i:> iC)¿"i("jC'r: l1rorii al]¿g;"\": 1)1" i\'ú .Run H!.)F{l.)¿)'T on t!"te besi rcci llarci brire. then u'-.t'
F:í'¿_:?\'FC"; ( i'.et' (}. 'íc) irismrc that thí- logicíj drives are pc)sitlon[": 1a:', c¿t:'j-1rt-'(j
l31enu S)'.
PROBLEM: 'M?ci1 bí"oí in- .ítít.- m"stem cÜñsQié either doesn't displm' an\"c!)jFi?. l)í"
r'Fi!"i["' :st r¿"i: "l?E" ¿"l"!a1"¿±c'tF'i"g.,
-- SOLUTION: 1'hi'. it. ñkc>í otten dút-" to incorrect s¢'ttin?,s; for thú cu.r: "en-t
(":cjn>o i e.most prol.)al_) :\" the ha tarat ú.or CPl Clock f' requency. bocit frotí: a
9ood :',ysieiíí. tÍ"K'T1 Usc.- FÉ'CGi (g iset (). 2 ) i"c) ju:the' sett iñft> on tííZ' PrOi: ·}tj?ll:
s\"5íé[Íí. Pay particNar attenticm to k1t: ñü !(CPl' CjoCÉ: Kate'l and \iúnu }
('I()íí\"'i'L and S€rj¿i] POt"¿ bata F:atU!; i.
PROBLEM :'ihen runnin>' ai"uí Ly-banked system with ZSIX)3 2. some pro,gra!!i$} f.ÚE!ñ
to "hang' or "lock uj""' the s¿ysteríi on exi t.
-- SOLUTION :One of the most common sources cjt this symptom is \\'iüí tRz.
application program where the author used code which assumes that the BÍX_)> and
Coniniand Processor are oÍ" acertain size, or bear afixed relationship to th: -'
adGresses in paµe (I. \cjü may experience this most often when using an IYG
systein huí ir |j\" answerir1? nis to the Autosizing query in BPBUILIJ (see (-). l).
To compensate for such iil-behaved programs, you may use atwo-step bui
proces>) as :
ii Lse BPEJUij-h to create an IMG file answering YES to Autosizinsz on exit.
This nia.xiniizes íiCí piacinp the kesident Eios as hiph as possible in rrtemorv.
g)) F.íecute B!"Fl'-1í ¡j.' ¿git in with an argument the name you £zá'."é to tht- tii·t
23
!y.sT.A.LLha"!n!-4' El/P Ei(: s
just created abcr: c'. This loads [he tiÚt inition Í'J"Oñ"l the í\Xí Íilt'. tniní'f: ji¿ttc'!Y
e-wt with a(aI"ria8'€! kc'turn. and answer :\'c) Iq Autosi zing. and YT: S U) píacum
systen"t segments at standard locat ionx. This procedure keeps thí" bier, addrc->.ii
ccmstant .but V\'l} Iñ1o\'é tht' start 1ti2 a(jdl"esseA of BljOS and Co!nnícznc] Pi"oc'es>oi'
X
down, if' possible. simulate' 'standard" sizes usw-i in CI-'/M 2.2.
24
B/P BIOS PROGRAMMING
5. Programming for B/P Bios.
For niost existim purpí'ses. pro?rarI}n'linp t'or l'i/P Bios is ñcj difterent tfmn tor
standard CP/JI 2.2 B!()Ses. tiren adaptinµ CP/M 3pro7ral1]s for aFJ/P Bios shou id
present no preat hurdle due to the close siIr,ilarit\' retained with the corre-
sponding extended f'unct ions. The power of atW'P Bios interface, however. is
in using the combined features tcj produce portable software across awide
varietr" of hardware platforms tn' exercising all of the B/P Bics features in
-
concert .This section describes the interfaces available to the prog,ranímer o!
asysteni usjn? the B/P Bios, and the functions avai}able to ease direct floppy
and hard drive accesses for specialized programming in aconsistent manner.
One OÍ' the architectural flaws which we considered in CP/M Plus was the o:i:t
way in which direct BIOS access was handled. We designed B/P Bios to be ag.
coxpat ihle with CP/M 2.2 as possible. yet provide the expanded funct ionai ity
needed in Banked appl icat ions. To that end, direct interface with BIOS cail~
follows CP/M 2.2 conventions as much as possible.
The fol iov, inp pages pro?ral}lUtin? as.suníe sonit' Í'am.i tiarity with the- basic C!'/'!
tundamentn! e,, arícl \\ ith ZM/ZJ m asseníhíy ianpuage, since fc is: beyond thú
intent O!" this manual ,and qui" li terary writ in,'", ski jIs. to present an ag."'t'n]i"::y
pro;"raniníinµ tu[c)!"lal .Shot' !c! ycw need addit ionaí assistance in tniq arec.
please reí er Iq) the annoú'ítc"'i bib! io?r¿1[jhy tor reference' mcer .l .
5.1 Bios jump Table.
The FsH)S Jun.j"' 'tah!t· ck)nj": ist:Í j(í JUIHj'8 tu various t"uncrion"·, wizlíin :''HÍ'jS
anti ru"orides tilt-' b(ís}].: 'func't ionaj ity. It jncjude,¶ the conípje[€· Cj-'/j Z.
M"Qüénct .nic'sí ui' the Ct"'/31 3faka CP/M P}i-'S) entry points (aühouµh sc)r ..'
c!if"íer in paraníeter orcleríi'íg ancl/or í'é$zi g)te}" usawí }.arid p.é\\ entrv poiritx
neecied t(") hanü le hank in;: -in ¿i Clj!): 4ist€'jjt and Jogica !nianne r .
}ji(j: >entry t"""fiñt$ c'cm": i",l CI a"ía!Ae of Abso!utc' í-ijr"té .'iunips p! Ácécl at ti"iú
|)eµjnnin? c:A the" executable Inúmc'. Paranieters are passeci to tñu !" ÍC"B ! !'1
re?istcrs á.r nú'eckci for the spt"ciÁc operation. To avoid future' cQr|{r'atib¡!'t)"
?I"c)i_) ltüí"t:': ,SíA"té u!" the p"round ru les for Eiios con.stz"ucticm inciuc: e: \;_)
al terar ion cñ" ,\ iternate o!" fnciex re?i stt'rs a> aresu li OÍ" tsios cal l:s. ancí a!l
re?ig5[t-'ry li sreci in rñc dÜc'u1r|ení,2t ion as beiñfz Preserveci/i.'naí! ecíeci '\iü .:--"1 i-),
returnt-C tcj the c'allitíj' proprarti in their entry stare. bio.s entry points a,u:
t.
iFurction C) (xx'jíj )Cold Boot ))
I) y
I)
)1 Enter: None iExit: None. ij
I) i) Lx.ecution resumes at CPR ))
l)
I)
Uses: All Registers
))
i'-\"rt"c'tt t"_(._;lc"j >ttírr init iaii: ':aímn on the first executiom The jump amunienz
jy·. 1&u::j" '."F'._C-I'¥'p'!"1t1.¿·!j. and points: To the lO!' Oé\"icé ,juirí;' rahle. 7'"hc reamón fc: i
2f
PRCKMAMMNS E3,'!·' BlC)S"
this is tíiaí code [g períorm tht: mirial ization is often placed in areas c'i
rncwíory wh!ch are later used to store system intormat ion as a merúory const"ru"a-
tion níeasurt". Attempts to re-execute the iniriaúzarion code would thun
encounter data bytes instt.'ad OÍ" executable in,structicms, and the systeni would
most assuredly "crasiñ '.
Among other functions performed durinp initial execution of the cold Boot coge"
are: Establishinsz an initial 73 Environment if necessary, initializing am" Z3
system segments such as an Extended Path, Flow control Package. Named Direc'-
tory buffer and such: sett iijg; system-specific values such as the locations of
At Jocat ion Vector buffers for KÁ\Í and Hard brive-s: and execut Iñf2 the bericú
Initiafization routire (see Function 21). The Cold boot routine usually exits
by cMiniñ? to the V¢'artt Hoot Functicm {Function l) to set vectors on F'a"e Uof
the TPA memory bank.
li
)! Funct jQ!"i "! i 7':/-:D:3 )Warm Boot )1
I
ii li "-j:
f.
)) Enter": None )) Emt: None. )i
j| )) Execution rerurnz. to C9i-.. ))
;. .
Ii i) Uses: Ail heg1Eters l.
jb· _=_ " __ _ . _ --— __r: - ,_. _ ,,_. t;
}'" f1jnjtí|"): "l 1"l-- inií c:ji:"L":'·. íjl'j (): ""-·1".:1 ]1];."' >:\"])tZ'77E ,irr! rc-íurns 1.\) tjjg' (Üti: tit ';ñ: 't
i'r()Í"'fg: -]: oí" ¿í: u-' :" ti"' 'g;¿",7: 'it- it1I"Ol: t t!Iz? citi'f aul [cl t' i\"E l./c)ci track" .("' !" j"r il:m.L-\.:
RiÚrllc" :""\" 'tt': tI'jc')- M: "cj "CÜ'U'"' \',iti '. i", }"¿,""1 'j"¿jr}l! Mot opt io'"'
Lli) }¿': -·,5 ,¿CU"G·¿; !2 .::u !] l--i')L·h¿-L'."t. '-! kt:':z itierñ Systetii l.'4.[erl: '-,i<"t:: i; K>.\ !:ír ci n.' :"
opc"i"ac ill' t"ran :' ig.'; . . |'7'i..),¿l'¿¡¡!!. thc 'Áji ¡"lü isCu :[\"±CÍÁ2 !" at¡ÜC'¿zt iut: (.) in !lít'ñ: . )1"\"
pcnñz: ', tC t'i::' 1"{-'t: L)r. "t-" ji-!)'ji}('i"'.'c'·: l[)i"L)>' rairm i', :jlnú: -a! {c' i" tA>a.hkr: g, g Hu ?
SñC)'1 lt"i. iI':s"LUa'-!. íÑ t'--'" tñt ("ií.'>-,t iizat :ü:: á7"2Lliíi: j'iZ \jÍ thú JJiíii: '\"c'CtOi" in thú ifiü ,
ht': "Á" r.7i"t"j li". :l"7};]L';ij,'": :' C'Y¿'"i¿ tO!" if' ttjif in the Cá"u gt "\': "{"("y: "¿,!!frt· A)l·
','r,Ái"ííi !mot ',"ÜCíO" t"'": i".t :'','_1 iIjl' :':n-ü us .e.níi 1c1l the 'Rea !'Isl c)'- .tn >..tu: 'íí :z
(-"c:t "I' '.t!'1' 'Cl '.', '"" ": "ik't!1'" i\tj "' 'l'íí"" ríiuíjt i'f" ser}L22".¿lL" 1\" duíerm :ii'ni l>uc- iü: í' -
íiorí 3(-.Ü.
))
Function Z(j'Kl'Éj Console InlA}T Status I)j;
lI
Enter: Noríe jE>it: A=CFFH ii' Char Ready, NZ
,
i) !A=¿j it No Cnar Ready, Zi)
l li
i,
ii i Uses: AF ):
jl i
,___,;:
This funcí ion returns aftag mdicaíine whether or not acharacter has bet': "i
entt"rttí trow the C.ORy,Uj} eáé\"icc- sc iecteci by the' IC'F.YT!' on Pape t) cjf inc- 'Íl
fjañÉ .'i"ijü rt'turn gj[¿1[u" i:'-, teri uxecl m' "rransi€'n[ Proµrarns to cküet"mn-- it
tríe us': 'r fíá:-, a'LÉellíl"te: i '.G} 'a ¿'¿'jé cu" :'áo;' prc)µr¿íni éít"t'út }cíñ.
2E
!3,'!' ENOS P!'1QGRAM!\Q !t·!c
tt;
lFunctzon 3(v.xÜ9j Console Input l
Pt.
;:
li—l
lEnter: None lExit: A=Masked Input Character l
'I
!Uses: AF !
iil
This function waits for acharacter to be entered froní the c: onsole deuict'
selected by the IO'JYTíi on F'mte Uof the TPA Bank. and returns it to the cal!-
ing routine. Accordiñfz to strict CP/M 2.2 standards. the Most Significant 1_j,¿
of the input brte must bc' set to Zero. but this may be altered by tÍ"ÁÍ iI)!ju1
mask for the (_ cnsoie beUce.
' '"" "_ '_" "_""_il
)Funct"íon 4(xxOC) Conscje Oútíjct ))
ir—-
--—--— l! """'"" "" """
_'"""__ ")'
)) Errrei": C=Character to send to li Exit: None. j!
lCcmscj eii li
uf"
li |1 Uses: ae ii
i' --_ ."_ - _.__-_. ___.. -_.__-_ g
jT'i', "JJÍ\-'l :ü'"1 ¶c'ñ:"t"· a":p¿·ú"lj ie·"! character to the Cc"jñ>oi€" '.'erice dút mud 1?\" thú
!C".'j';Y7 lor, F'ai'c' C) '.ij" lin- TI-':', Han!: .}[ vn!i watt !"ca" ihc (i€'"\._i¿'t' tu i)£-: 't)!:lr-'
rt? xÁi y.!!nek-'L'f-jS:¿] ', .l!z:\.":L- >e'jz?!in,2 tlié- (:"j]¿"ÁTactci". áñt! vi .! : Fid y. él)7?': ¿j,·
r-.pcúi: i1t."g !li [ !"ic i; íí¿,: "(":-:L'i" t'c'","j') l. ont Lz'a["atj"7] ic)l ti'] t- üt.'i !t- 'j ¿f .7 ¿¡j} (.}u: -l}j:: .
t""' """ """" " " " " _"_"--— =— ---—m---— —_- _—-— __ _-- ==í
|: Functícm i(:c-".jy )Lzst Úuzpur jj
if "-- '"" - -- -= ""''""'"ir -- =-_- —=--—==__ -_ __ ==— -_ ~j)
II E: íeu: C: =C,7gT[¿c: Te!" to semi to iE>: zt: N': me. ,,
): NEA C'ev (Printcr) Ii j:
ii )1 ÜséEÁ af I!
e- ---- - - _ .__i: -__-.: ,
"i"hn: j'ur}¿'tiL-.?n í'\"j]] sc"ñd aspc"cit'ied character to the ¿,is.t !)E?u1ce" (i'rintcr "
clef irítA by the JOJCYTL on É'a,zc (' of the TPA Bank. It will wait for the cié\'jÉ"¿
to bc·cür,ie i"éáj\_. it" ríg"ceg>sary. het"ore sendin,z the character, and v\'i ]! ñiá: ':k :!
&> specif icíj in thc Character 1Nric"e Corii'iguration for the Output cié\"icc'.
n";
m. Ñ
PROGRAMMI NG B/P BIOS
lit
Function 6 (XX12) Auxi liary Output I)
Enter: C=Character to send to 'Exit: None. )1
'Auxiliary DevjcE' 'i
)Uses: AF
ilIj
This function will send aspecified character to the Auxiliary Output Device
defined by the IOB\"1"E on Pape OOÍ" the TPA Bank. It will wait for the device
to become ready. if necessary. before sending the character, and wi LI niask it
as specified in the Character Device Cont"igurariori for the Output derict.
li i
)Function 7(x>.: 15) Auxi liary Input )
li l
Enter: None li Exit: A=Masked Input Character ,1
\P, R
l') l)
Uses: AF
I)
ii i
This function will read ¿j charactcr Í"roiii the A.uxiliarí" Input r)€\"i£€' dútineci 6"\"
the TOBYTI- on Paµc L) c) !" the T!'..', Lian! .It witt wait for acharacter to 1)(j'
receireci. arñ \\'ii }nía: ü: :12"7 specified in thc Character I"ieuice coni"i?uTatjc)n
for the' 1np'.ií cic-\"ic'é.
li _ "_ '"__ __"__" -__ "—-"ai
l) Furlct]on £' (: ·:X1ú) Home Drive li
ji Enter: Neme lExit: None. heacjs on selected l)
ii idrive moved to Track C). I)
ji li Uses: AI iPrimary Registers i)'
',,ll . . i'
This function \\"iií position the head(s) on the selected drive ic) Track (j'. In
ij/i' Bias, This operaticm perforníx no useful action, and is siwplv aketurn.
Pending \\"rite p'itrµes and head reµositioninµ is handled by the inchí"iduai
device drivers {Specif'ica! ly Sot' iect Drive funct ions) .
28
B/P BIOS PRCK-;RAM!\A| !\'G
'l!
IFunction 9(xx1E3) Select Logical Drive li
ll
I)
iEnter: C=DesireC C'6ve )Exit: (Success) A<> C), NZ ':
i(A=Ü. .P=151 IHl =DPH Address l
i l (No Drive) A=O, Zero (Z) !
) l HL =C)
l'Uses: Ali Primary Registers i)
This function selects aSPuC'ifiéd logical drive as the current drive t'o vi"hÁ-'?i
disk operations ref"cí". If' the operation is successful, the Disk Paraníc'tc'r
Header fOPl-í,) addres:3i:-. returned for later deterníinat ion of' the unit pararü'-'-
ters If the operen ion fai Is Í'q1" any reason (non-existant drive. unkncñ': n c:["
bad media. etc l, aZero \"áiÜt' pointer izi returned to signi Í'j" that the" ciñ\ t.-
c:annot bt' acc¢",xc'(! tt ]"c)u2j! ti"íÉ- bier",.
)) újñcticÉ", l2' (>jiZ.) Select Traci.: )')
jl "_"_ "" ====._
u
i"_ " jl li
e
,
l) ESíté'"' ÉRJ -Desi l"é'tj 'l"á; t: N¿ÁTltie!" i) Exit: None. Tracn Number saved i'
l) I) ))
I
ji ') Useíc No ReMsters i'
'(
|1 — — -_=-—_ _-__. _.=—-—: l_:X }:
"ñii.f fUr: .jti¿jía "Áü_"/íc-", ¿.i Sl"i:-'íiecÉ í.O>"ic: Z! IIi,iíCÉ: n'jnfl)€'r for atuím"e CÍlhi L]r)ei¿j-
tlOll. 7ho' 1¿;: '-.{ \"átü'j .SZOÍ't: .' \\izñ íF}]: -3 function v\'i Li :j'¿; tlít:-óñtj U4tj'¿ it'j i)í:..l
F.:
eaás áj,ci i'g"iü±>,.
NOTE: \'Y!)!ít£ ¿i ib-LÁT \"¿íj-µ;· is. 7rr'cCiÍl£'¿í for this Íunction, cmig tñí luiu i" '".\"{:.
l>.'-i: ct>j !') u: -.t;' .j in niü".t cI j"¿
\"ü r :-.
y=— """
,,"" .--——-— -"i)
;: Fur: 'cT7ori 11 í>: g:::'i )SeÑxn ¿>2CtOl" )'
t
:'
.t" "r"""""""""" """""_""""__ _""-—_"'lí
l) Enter: EtC =bestre2 Sector Num )Exit: None. Sector Numer saved ))
f
)!
lUses: No Registerúí
ii
This tunFtic)rl stores asr?ci!"iecj Logical Sectcrr Number tor ailnure dís: t:
opc'rat ion. The íaíít \Áíttíc síorecj with this functicm will be thc: one usea j:j
L'jsÉ Reads an.i \irites.
NOTE: 'YZÍíii€ ¿i Hr-bit value ix speciíied for this function. on1y tht- Iouc'r 7:·rtt'
lb-bitsji is u,",ücl 1!") ail ]Joppr bisk and most Hard and RAM bisk: dr}\"c'I,e.
29
PROGR/LKAMlPlG B/P BlO"'
l""""i
iFunction 12 (xX24) Set DMA Address tor Transfer )
__)
Enter": BC =Buffer Starting Adai- Exit: None. DMA Address saved i
)
Uses: No Reg7sters )
This Function stores aspecified address to be used as the Source/Destination
for afuture disk operation. The last value stored vc'ith this function Y\'jj] bt
the one used iri Disk Reads and VCrites. In banked systeriís, the Bank selected
for the u:ansfer may be altered bu Function 28.
I)
Function 13 {Xx2K Disk Read
I)
))
Enter: None iExit: A=U, Zit No Errors 'i
Lq\
)) lA=Non-Zero it Errors, NZ jl
li ,) Uses: Ail Primarr' Registers' ¡I
-
Tí"ii g. func't jQ1""i reacb' aI-QMG cal ].2b-rc"'.e S&CtOf f'rori, the' bi.>7'.. Trac'R añil S: -".; tOl"
set by Furl¢jt|cl: ij, 'i-ii tQ the' aajre".s !':(.'[ "n"i th Funcí jg'i 1 2 .('n ret urn ,F.ki -
isttu" A=t) ]j' ít:é opc'i"at Jul 'j: ¿ij. succcs: j"ul .kün-Zero if" 1".rrcus. occt'rrúci.
lr_'_ "'="_ _""""""""""""""" "i)
e
¡i Funcúon 14 (X>ú/'ií Disk Write i'
i' __ _ :
k
,[ Él ""tí
ii' Entei_: C=- 1for imír.eciiáte write li E: tit: A=U, Lit No Erroi-s )i
ii C' =C' tor buttereo wt-itÉ. I) A"- Non-Ze: "o it Errors. NI l)
I) ;j Uses: Ail Primary Reg7ste"s I),
u
"i"his, function 1'.":"itc^$., sÜ:±icÁi ¡2: i-j")\"[e sector to the Dist .1"racE: arm 3CC\Ájl
S,z:"l by Í'úñcT loni-, 't-ll f"roni the acÉtiress, set \\"itt"i Function i2. If' F?eµ"is.túr í=i.
an immediatu VY'í" flt: and tlu:-:h oí' the bios but"ier -t sperformea. i! (. =jj. rhc"
y\'1" ite 1Tiá\" he ckim"eci clue' Ec' '-he deb!ockinµ.
l)
Function 15 (xx2D) List Output Status =j
li
7!
il Enter: None )) Exit: A=OFFH, N2 it ready tor ji
)) lOutput Character )i
I) ;A=O, Zit Printer Busy l)
li 'i Uses: AF )1
k-__f_--- |1
Thii' t'un'¿tio!"í 1"¿'türrí·3 aj'j¿"g! ini: ljcaí]ng whether or not the printer is rea.dr to
3tB
El/P BIOS. PROGRAMMING
accept acharacter. It uses the' ]OFjYTí-. on Paµc' Uof the TPA Bank to deterrfiinc^
which pW'sical device to access.
l
Function 16 (xx3Ü) Perform Sector Translation
Il
!Enter: BC =Logical Sector Num Exit: HL =Physical Sector Num Il
jDE =Adclr OT Trans Table II
li
Uses: All Pr7mary Registers
l—---—lj
This function translates the ijo/zical Sector Numher in register B("' (óñí\" t: uscti
at present )to aPhysical Sector number usiñfz the Translation 7ab!e ot'tainc: i
!'roni the DPii and addressed by 1)Í..
This: en,jk tht.' strict CP/fif 2.Z-corüpiiant portion of the Eiio: sJuiiip 7";Li.).¡t?. i'ií/-
nc^:íg.qj" iCÁ ol' entry Juñir-. rc)u?h!y fol ]cm"s> those used in C:P/:'·'l 3. hut \iitñ
corre'cti(71': f. 1\-) 'n"h: ñii'e r\'rcti'i\"ed ío he áef'iciencleq and inconsistencies in ti"tt'
cY: ti it:µpai"amc't±r". and st ructurcm
T-- """==jj
) F"u: "icticm 17 (): >¿3'3) Console Output Status i)
if"""""' ""__ —-==—-_ . ,, ,l)
j;
i) Enter: ?\:3!_'le )) Exit: A=ÜFFH, Mit Console |1
mli .
li l) Reaay Td!" output cha: "i)
): A=G. Zit Ccmsoie E.uz"y )1
li I! Usem A9" li
li
lj
'7ru'-, Q.': íct ""'"" r€tuTÉ7'2 ,"1 i"i:í" 1r¡(jj¿¿jt in" '?,'Íle[!]er oí" not tnc console ¡)Ú\"i¿t' Xl
leúítA P)'. the TC'íñ"ñ. (?ñ Pa;"" uor thu TPA Eia: "í!" is i"emií" iq accept ,'íñz\Z 1-)· !
outrut ch?,í"¿"i¿"tc'r.
r" ""==— """==——: ===t== ""==- — ————""—
_' ""'"'" "Él
iFunction jc'. (XX3G) Au>: iÍiary Input Statuz" I)
)Enter: None )Exit: A=OFFH, NZ if Aux Input l
ihas character wai ting )
,lA=O, Zif No char ready )
L
)
iUses: AF ))
This f'unct ion returns aflag, indicating whether or not the Atíu: iliary Input
selected br the JOFñ'Tlj on Page Oof the TPA Bank has acharacter 't'aiting.
31
PRCGRAMMING E/P FIJOS
(__ __='"==ii
)Function 19 (XX39,) Auxiliary Output Statu£ ))
!
h
"""" "'"i
)Enter: None )Exit: a=OFFH, tCZ it Aux Output l)
Ready tor output char' 'l
lA= O, Zit Aux Out Busy )
:)Uses: AF I
li li
This function return aflag indicatinp whether or not the Auxiliary Output
selected by the TOBYTE on Paµe L) of the TPA Bank is ready to accept another
character for output.
I)
Function 2C' (xx3C) Return Pointer to Device Table ))
,! __" "_""_ ""__"_"_" l! __ "_" __"7i
|| Enter: None )Exit: HL =Adar" Cit Device T?jÑE li
ii li Uses: HL jj
|1 -______
jf __ _"
This funct ic/ñ ]"\")',l7h}"," c(: }r¡"esroÍ]c!'., t,j an an&jo2¿jug. Cij'/"f Piu> funct ion ai [tíQUz}:
.-
prccisc" bit cit'f"m:tiou::\"¿íF\" scm-"'t:'"mt .The Character U) 1ái"'je cons-i: ',:±.
four dt:n"ic'e>: \\vj;, (::\"):s:Z, !'!1). anti XL'!.. }ach Mc'j an input ancl outrci: niií>'.É: .
dat,'i rat e.sc- ttiI)g>. an'! ;)g'("í¿L)c(7l fia;-'s .I\üi ¿jj] citS ir'.c'ti sn.uin,t" 'c n". :\.' ñ/.é""j,
áñ: -X': .':':./X'. "!JI hañci>há! mg. eíc j' may bí' fu} ly iFi!'lt:¡]!c'!1tecl in a.,zcl: ':t-':'Mcm. hr'
are ¿i'."¿Ii]al"}: Ú t""t"Ñ" iaú-r" c?'.r{i!'l>iL"¡[í c"tÜtt usc.
T: =======_ "li
)Funct7Q!", 2'1 (x: ·ú7" jl Irritialize Oevic.é¶ I!
i:-"NÚ--—---- _- -ii
)) Enter: None !' Exit: None. Ir|it1a1izat1Qn done I)
|1 i) jl
I) CL üses: Ali Primary Registere li
i" --—- -¿
This function iríiuai izes (: h¿tT¿icEer TO settings anci orhe.r Í"unciions whic'n ni: u"
be varied tn' aCcmi"iµuraticm L"íiiiíy. It i': an extended version of the corre-
spondinµ CÚJl Pius', l'uncí iori. Ti:.pririi:"iry use is to restore 1() cont igurat ions.
systeni raranleLE}"s ,suc!"í ¿":
.t clock íate. "n'ait states. etc, after atteratiori by
projzrarñs v,"F: ii-']"í di tc"c:íly access harchi'are smh as many rnodem proµrarns anti thu
conf"iµurat iün Ut i l it\". TSF'(': CFC: (u.et' 6.2}.
32
B/P mos PROGRAMMING
lFunction ZZ (Xx4Z,) Return DPH Pointer
Enter: None Exit: HL =Address of start of
Table of DPH Pointers l
Uses: HL
i
This function returns aPointer to atable of l6-bit pointers to Disk Paranic'-
ter Headers for Drives A-P. ANull (O0OOEI) entry means that no drive is
defined at that loµical position.
"7
(,
Function 23 (xx45) <Reserved tor Multiple Sector iO" !
-ii
'!""" """"1)
)Enter: None !Exit: None. jl
;))
:iUses: No RecljsterE !1
I
__,_- -i___2
This :'u!}cíic)[j jg. F:es-on"e:i the initial B/'P F:ios: release and simpir return: -..
if___"__ """ "" """"""""""""""ij
li Furiction 24 (xxUí.)
,,
Flusn Deblock.et" li
)) Enter: None l) Exit: None. Penchng om writes ))
i: Executeo. I)
)1 iUses: Ali Primary Reqisterií i
ij—. -- _"=_ ___._ __======_ ,——ji _.__ ., .Li
Thiu fLír!¿"íior2 \iTjítj an'." pE'!7tilrlF Data to dis!: írcñii de|7jockin? bufi"ez: s. así Ihéb-
tiont'd in ]'uActjc);j j·; abm"t. Thiú. f"unc.%jor: shüulci bc callt'd in critica! areúc',
whe ¡"¿; UZ"¿;>í arí· bein;z simpptj .Of rnc'ciia isí beinp, c":chan>"eci whc't"i it isposs, i!_) ju
ÜJkit ZM Upei"at inµ S;\": 'iIE"i, i\i ii not detect tht: chanµc'.
1__—:====" """""""_==" el
lFur,ction 25 (XX4É3)' Perform Possible Inter-Bank Move ii
l-- -- li
lEnter: HL =Start So'jrcé Address Exit: None. Data is moved i
l=Start (Jest Address li
l BC =Number Bytes to Move )Uses: Ali Primary Registers ki !.a
This function moves the specified number of bytes beuc'een specified lOC¿i[iQ¡)j .
For banked níoves .the Source and Í)e.st inat ion banks must have been pre\'ioulY iy
specified í\'itíi an XNO\7: call (function 29). Note that thú Fi/P jnjp]em¿'Rt?lti(j: í
üf' thi:.tunct 1c)i"! rt'\"ej"se$: the use C'!" the !ji'. and I'll-. repi S>t€?l" pal t: -]l"Cj!ñ Ü"1t-'
CE'/j'l 3eLlui\_¿i iúní f"unc.t iori.
33
PROGRAMMING B/P BIOS
Function 26 (xx4E) Get/Set Date and Time
Enter: DE =Start of 6-byte BufT Exit: A=1of Successful
C=C) (to Get Date/Time) A=C' if Error or No Clock
C=1(to Set Date/Time) Uses: All Primary Registers
This function provides an interface to programs for aRea!-Time Clock áriver
in the Bios. The function uses a6-byte Date/Time striñfz in ZSDOS format as
opposed to Digital Research' sfonnat used in CP/M Plus for this funct ion.
Also, This function must conform to additional requirements of DateStamper(tml
in that on exit, reµister Emust contain the entry contents of (DE+5) and HI.
must point to the entry (UE)+5. If the actual hardware imp!ementinµ the clock
supports !/10 second increments. the current 1/10 second count may be returned
in re?iste!" I).
)Funct ion 27 (Xx51) Select Memory Bank
i)
i__Ji
'li ""li
iEnter: A=Desired Memory Barii'· lj Exit: None. Bank is in Conteít li
I!in range Ü..7FFFH ii
q.
)Uses: AF ii
i-ii __?
Thi sfunct ion selects tiíc' 3'leniory Esarik specif led in the Are,zistci" anti .make i ¿
ácti\"é in rhí' adc11"e,s.? ramü {)-"FFni. Since charactcr Ii"") lüú\" tiC Ut,C-C: ',i"ñc"rí a
bank other th,"ín the TP?- (\\ÍÚCtl contains the IOFñ"TLl is activated with ti\i:-
funct ion. tñt· R./í' LíiO>, áUtOtliCtÉ i'i>'i1 1\" ohtain±í the IOF\YTF. from the i"í'.'\ hnnP. Eg:
insure' tlíat (rm"a' te:"I'.": ' Qcc'cj'y' 'v'v"ith íñc ciesired cic\'"icés.
m"""i:
i) Fun¿tiD'2 22 jy:·:5-?:' Select Memory Bank Tor EMA ii
):
Enter: A=Memory Bank' for Disk IExit: None. Bank Number savtui
))
DMA Transters tor later Disk IO i
ii Uses: No Registers li
jl l lj
This functicm selects ameníory Bank with which to pertonr, Disk IO. Funct ion
12 (Set D.\'Z-\ Transfer Acídres: sl operates in conjunction with this .selection for
subsequent Disk 1(").
3A
B/P BIOS PROGRAMMING
:Function ZÉ! (xx57) Set Source &Dest Banks for Move
)
i
!l
Enter: Ei =Destination Bank Num Exit: None. Bank Nums saved 'for '
C=Source Bank Number MOVE operation
Uses: No Registers i
This function sets the Smrce. and Destination Bank numbers for the next Mc)\"c
(Funct ion 25 j.After aMcn"e is performed, the Source and best inat ion Ekíñksí
are automatically reser to TPA Bank values.
This marks the end of" the CP/P{ Plus "Type" jumps and beRins the unique addi--
tions to the B/P Bios table to support Banking, Direct !0 and interfacinµ.
|1 l:
I) Function 3C (xx5A )Return BIOS Addresses jl
l'
li
I)
Erter: lKcrie
1| Exi t: A=Ellos Version (Hex) 1|
!lBC =Addr of Bioe Base i:
ij ii de =Addr of Bic.s cc:ññg li
-
ii i) HL =Acicir of Device Table ')
|i li Uses: All Primary Registeus ,|
l-ii y
ihisi j'"dT1'¿tic)'ti i"etuír: -\';j; lC.t: pomteí"ú ..) interna! FROS data ari'¿}'-. únd it.':
íj'jos \í-·rs,ion !\"urlil)cl" as ind ícatcd abm"e. The EÉio:"> Versicm niay Ik' ü,t>t.'d to
dc ternn j}¿- cu r reñí: ycd' tlií: :,..\ :-..ú"lh sgt"tt·\'¿í re, an·.i a'i li be used hy \"¿íj'iQtÚj st.|:)rp(:).É"z
uti !:t.j¿'7, t\jj ii.ir: JhjZü: tli';' pc)j>'- il: ·í litj" ot data c.orrupt ion añci/'or as ¿t'; irí': i:cti'-
tc'í" supported Í't'aturtm
Z
Tht 1k-t>t Ál: írc"-.:-, O!' Tilt" Fic"· Junip Tab le re[urnÚ¿: in remsíc'r íst..' is oi'íc'r: uuc '..
[(_) in"íUIE that- the y"opci" i! tit-: ':n,z i±, achit-ú"ed into tríe E'/P data structuré-·> i!";
the f\'£-ñí íhut ar1it")'· ''¿:
!i,. if ha" been added such as w)?cñ Tunni!)?' í":Z("'.")'\:.
v: ni le t!i:¡';c.í1"rlj hi'c't juííii"' cU ñíc"iÍíc<\" locat ion ()(: )C'0lI nortüai iy points Ii) tííC: ñicY,
Fkise+.7 .it i". rímí a!'Q\'a\'> IL']i¿íi)l€'. whereas this function \\'iti aiv,'a: i's return ¿i
true value- ií'ith !$/Í·' Fijo'..
Registí'm mand FU. return pointers which are of value to program-s which a}[t: '1"
or configure \_aj_:Q\]s I3ios parameters. The pointer to the configurat ion art'a
of the 13ic: >should be used in wilities as opposed to indexirjz, from the' st:_·,rt
of the Bios Juiüd Tabie since- additions to the jump Table or insertion of othc"i'
data mil at'i"ect the' Conf"iµurar ion Area s[artin? address. The pointer irí iii
is ami iable for use in systems which may contain more than four character ]{/
devi cex. This pointer enables exchan?es OÍ" devices to place desired {]e\_icL·71
in the first f'ouj" positions of the table rüaÉ: inµ them available for selection
\"i atht' Tc)F¢\aÍ¿ .After any alterations are made to the devices. acali to thi
Úé\"í ce l."(jl!Í"}pLji at ion Üicjs Funct ion ti should be made to activate the' i'eaíure>.
3.5
PRCGRAMMING E3,'P mos
FT OPPY D! SK SL¥FLNCT fC)\'S.
Function 31 permit,s icm'-level access to Floppy and Hard Disks lvia SCSI intt'i"-
face) bv specifyin.z aDriver Nurnber and desired Funct iorí. whi le sorúe haríN'are
types do not suppoi"1 ali of rhe parameters specified. particular!r Íor rIc)rp\"
Drives, this. architecture supports all types. a]thou?h specif ic systeriís may
ignore certain funct ions. In this manner, for example. asinple Format pro-
gram supports NF.CÍ765, SMC9266. WD1770/!772/179X and other control Jer types
with widely diff'erin7 interfaces. Floppy Disk functions are accessed by
entering ai\7Áüé into Repister B(Floppy Driver Nuniber) and the desired
function number in Reµister C. then jumpin? to or cal liriµ RIOS Entry jürrtp
number .
i:
Funct7on 31 (Xx5D) Set Floppy Read/Write Mode "")
)Floppy SubFunction C) l!
i__j
l i i.
l) Ente": A=C) for Double Densitv iExit: None. ii
bp I
ll ff tor Single Density )i
B=1(Floppy Driver) iUses: AF" ))
)i C=O(Subtunction #.) Ij;
'li
j; l
This rut't inc- es.taMisb-es the Density níocií' of' opc'rat íjñ. of' thc· I"!op;'y T'i: x?
Control ter fcr Read and 'Á'ritú ¿íC'CCSSuS it assumtr-, that SubFunct icñ-í i{' úc' t
Si:'c' and }l{)t(: É1"l anti 3(Set µ.€-clo1"' hm"e bet-'ti cal lea first.
li """ —" ----—' " -,;
I, Fur!ctiD!"', 31 (XX"O;í Set FlopW Msk &Motor Pa: -m¶. li
I! Floppy SubFuncbcm 1I)
L: I'
t'
lj """""""'"" " '" """ """ ""'T """" """""" i'
)Enter' A-C) to" 3C'C' rpm (norma' llj Exit: None. j|
ti
li fe" Tor 36Ü rprr' l:
8"/H[I.]ij i
UI) =rp" tor Mcul?'" Control, ¡i Uses :Ai" j;
I! C) ii" Mcjícy" aiwavs orí II li
S
;j ¿=1")?sl Prive G1zé li i:
t' C,
El =i(Floppy 2'"iver) I) l
I! C=1(Subtúnctum #1 li l!
__lt __lí
This rout ine esta!jiisheA sonie of' the physical parameters for aFloppy Drirú.
The norm! S.2S" and .3.5" disk drives holdin? 400 or 8(J() kt) or less rotare ai
3(!() rpm Man-y ot the newer drives can increase this speed to 360 rpm which is-
the rate used on olcit'r S' floppy dI"i\:e'E. This is the speed used on the "liiµh
Ijensity" l.2 É46 l1Tj\i Í"c.í"n!eíttec}) 5.25" cij"i\"és. The Aregister is used to
indicate thc ftísteut speed capable on the specified drive. Register I) is usc'ci
to indicate whcthc'r the Motor is always On, or will start and stop periodical-
]u. This, :sn¢}rni¿3i 1\" tiséíi Fy the Bios to delay for aperiod before \Kritin? if
the l}í(jtc'/: 'is snojY"'cd u") al 1c)'a thc· diskette to cortie up to speed thereby ÑiÉi-
ríji7?nµ' c.ha: )cc-:] O!" data cÍ_)1"l"uf7t icm. Fzeµimer ii:-: used to indicate [Y)t¿j pl"íµ> l-
3E
EI/P BIOS PRCRF?AM!.A INC:
c:a! llic(}i¿Á SlZC am C)=iiard bis!'., 0()jB=S: "Drive. 0!013=5.25" ¡jí"i\"c, arS
OlIR=.3 .S". Nothinµ is returned from this command.
v\'!íi le aIjof" these' funct loris may not be supported on any spec if' icc-oníp'¿!. e'-
type. thc: interface from usinµ pI"oµ,ranLs should íílwayx pass, tht' ntcexsary
parameters for compatibility.
NOTE: This rout ine assunic's that SubFuncticm 2(Set Heaci and Drive jhas been
called first. Cal jthix routine before cal ling Function O(Set Mode).
ii
_Function 31 (Xx5D) Set Head and Drive )
,
Floppy SubFunction 2
,
I)
iEnter: A=Drive #(Bits 0,1) iExit: None. li
b'
Head #(Bit 2) !i:
t
i| B =1(Floppy Driver) I) Uses: AF j;
';
'L
_
C=2' (Subtunction #) J,1
Thi yrout :nc' eúnc'u--.t :',üüi re?¡s}í(-r .·'. containin: the r!(ji)l?:t' tuiií nuiiiM- :"
cog€': .! in i":it. Li A. ,-!(t"n :'I) :: t: ": .i=()! . . -J =ii)) .an: i Úié' fj'-'¿í: iiji rtj; 2
('\ T- !it:ii':É G. !"lie,.. j]i.:':.'[i]i:'i.- i".j rt'turm"cl t["ü!í: thi ". f'uncí ion. '.tí !ith: '-
Suhfú: 'ít imí i"!:-i[")i-. !!,'.: g'j' tlí:-' l7[!)l';": -, ¿(i rii¡: )jr|}iL'z"' FkI"()'í!¿·¡,}-' 11) F"it: -l);,'í ¿j¿'gLjÁ,'..-_".
,
f
I) FUl"¿tiC/'_| jj {>'·53"' Set FIoDpy Fljuk Node t
li ÉÜO7-í")' £'L'Z.2u!zk2[1c|:" i: if
li-"-—"---—"" "----- Jf --—- —"-"
l) Enter: /\ =Phyíu cai Sector Ñumt'er)i Ex7 t:None. )1
ii l) =Phváical Sector Size i) i:
li e. =Last Sctr #on Side i) Usem AF i
I) E=1(P1o??\" C'river") )1 |:
r'
i: C=3(Subtuiaction #) ))
it ,,__ __'- i: ij
This': routine estaF'iishw: ini'orniat ion needed to proper í\' acce: '.s. aspcciñ ¿·'-t
sector unariibiµuously '\i'iíi"i anutíiber of different controller trpes. On erití"y.
Re?ister Acontain: :the desired phvsical sector nunibcr desired. II contains thz
sector sÍ7t: where O=12>? h;:tt-' sectors, 1=256 .. 3=1024 byre sectors. and
r- contains'. thú last sector number on a side. X"ormal ly reg.ister Fis unused in
Western Digital c'or:tr(jjj€'r.s, buí is needed with 765 and 9Zb6 units. h'othin,í'
is reíurnccl froní this subt'uriction.
"u7
3·
PROGRAMMING B,,'P mos
Function 31 (Xx5D) Specify Drive Times "I)
t
Floppy SubFunctíon 4i)
t'
Enter: A=Step Rate in mÜIiSec Exit: None. li
D=Head Unload Time in mS l
E=Head Load Time in mS Uses: AF I
:
B=1(Floppy Driver) l
C=4(Subfunction #) i
i
This subfunction set various tirüinp values used for the physical drive select-
ed .On entry, the Are,zister contains the drive step rate in milliseconds.
Within the Bios'c this rate is rounded up to the nearest controller rate if the
specified rate is not an even match. Reµister Dshould contain the desirecí
Head Unload time in miliisecond: -,. and Eto the desired Head Load time in W9.
NOTE: \tith western Diµñtai type controllerm onk" the Step Rate is universal }\"
variable. In these sys[c?lí¡A. rates' signaled by the Bios settirws are roundc-ri
up to Ú)g! c'losús: tfixed step rate such as the 2. 3. 5. or () niiliiSeccmc'i ratc.
in the VM""2 Ol" C), It). 2(). or .j{l milliSecond rates used in the older \\'1)!""¿;
and \tD17j5. \cnhin.z is «·turntü! f'rorn this Í"unc[iorl.
i' Function 31 !xxZEü Home t:isk Drive Heads )j
li Floppy SubFunctzor, S1)
|'i ,j?
__ li i:
iEnter: B=1(FiO3Dv' Duivem ¡I Exit: A=C), Zero Set (Z) Ok jl
'l C=E(S!Át:tunctiQrl #)· "A<> Cj, NZ it Errors ¡i
i'li
)
j: li Usem af )i
:INOTE: Subfcns 1, 2, &4 Needed i)
._ _==== ':
This subfuncr ion ñlCj"t_éS the headls) on the selected drive tc: u"ack () {honít'! .
Only success/fai lure is iñdic,": té'd by thc \_cíiué in the Aregister. No Mí"
reµisters way F)c a]teI"(-?d by thi". function lespecia!íy BCi.
NOTE: This functiori requires that Subfunct ions l(Set Disk and Motor Paranit: -
ters). 2(Set Head arid r-'ri\"Ltl and 'l (Specify Drive Times) be cal led first in
order to establish the physical characteristics of the Drive.
38
EI/P BIOS PRCRRAMMINC
))
Function 31 (XX5G) Seek Track l
lFloppy SubFunction 6l
l
Enter: a=Desi red Track Number Exit: A=O, Zero Set (Z) if C'k
')
)D=OFFH to Verit-v, <> O, NZ if Error É
lOtor No Verification
)E=Ofor No Double-Step Uses: AF
l<>0 for Double-Step ,
B=1(Floppy Driver) NOTE: Subfcns 2, 3, &4Needed I
lC=6(Subfunction #) l)
This subfunction mores the head(s) for the selected drive to aspec.itied traci:
on the media. If the Double-Step flap (Register E) is set to aNon-7.c'ro
value, then the' control Icl iii !1 issue two stej.' püíscí: .i for é\"cíj\" track LI7CI"t'-
ríic'rit CUi' cj·cc"rerlij-rj[ Uic!i ix required. Af'ter the' Seek. aFxúí:! !Í) funct ion \i"i.íí
I)c pcrforniúj to í'ü: "if"y that the- cksired track was found if" the' \."úrificat 1ot)
ílaµ (F: e:-'is[e?" i':'i-s sct [o a\bn-7.ero Number. preferably Clí"l-1l. Only the' AT
réµú",tt'r"-: ria'." hi' altcuú: : h;-" this ftínction.
NOTE: Tin-. !ltr tio': rúqui ;"¿?í, th: iit Subf'unct 1om> 2 (Sí: tMad and í)j'j\"c j.3Cl '-
ilcq'j: 'í Di >!: 'dock j! auci dlsm-'ciiy Drive Times! be cí: lled first in orcicu" tcí
é.süíbii: 'h tht-: F)h\": -,icc¿i cha]¿L: [c]"is[ich of" the t'i"i\"c.
)-"--- i'
ii Funct7c)!2 31 (:<:t£3) Rezd Floppy Disk Sector !'
li floppy SubFunct ioiz 7li
l"-— —"""—— ---- —---- It ---- 4,
'l' Enter: Hl- =Üez.t Butter Acidresí- )1 Exit: f', =O, Zero Set (Zl rf c/x ii
er- 1{FjOP?V E': -iver) 1) <> C), NZ if Error ii
li c"' 7fSLjbtunctiCr: _: 'tt) li j:
li )Uses: AF .HL ))
!I! NOTE: Suljtcns 0,1 ,2,4 &5Neecied ')
l"hi ssubt"unct icm ReacN aphysical sector of" data frorr: the sek'cted driuc an'.l
places it in the buffer at the specified address. It is iríiportarn that an
apprcpriate' Iy sized bu: ff"c'r is pi"cn'ided for this task. The \"ajue in thc .-'",
re;zisttr 'n'i !7 indicatú the success or failure of" the function as irídicatc'd iii
thc: abo': íchart .Ck1Í\' the >.r and IIL registers ríiay be altered by this Í'unc-
tiori .
NOTE: Thi> furict ion require: -, that Subt"unctions O(Set Read/Write Mode). l
(Sc't Disk &Motor í-'artns:j. 2(Set Head &- Drivel, 4(Specify Drive Timesl and (l
(séxk Traci.) be called first in order to establish the physical and 1oµicA
ci]aracteris1-ic!\ c!" [h¿' ciatu transfer.
39
PRQGF¥\MM1NG E3/F' EllOS
l'
Function 31 (XX5D) Write Floppy Disk Sector :
Floppy SubFunction 8l
,
Enter: HL =Source Buffer Addrej Exit: A=O, Zero Set (Z) it Ok l
B=1(Floppy Driver) A<> C), NZ if Error
C=8(Subfunction #) Uses: AF ,HL
NOTE: Subfcns 0,1,2,4 &6Needed
This subfunction writes data from the buffer beginning at the specified ad-
dress to the track, sector and head selected by other subfunctions. The value
in the Aregister along with the settinµ of the Zero Flag µ'j}] indicate wheth-
er the operat ion succeeded or not. Only the AF and HI- repisters niay Mal-
tered by this funct ion.
NOTE: Thi sfunct iari requires that Subi"unct ions O(Set Read/Write Mocic j.1
(Set Disk &licnor E'arnisl. 2(Set Head &i)j"i\"é). 4(Specify Drive Time: ·j and ¿-
(Seek Track 'j bt' cal lej first in orck-r to estabi ish thc phys ical and iog,i cal
characteri,st ics of' thc data transf (-u".
li
)) Fcríction 31 Au Read DisK Sector II)
)
li
'I Floppy SubFunction gii
tr
);
Eritet-: E. =1(FiOPíW Üriver j
I) Exit: A=O, Zero Set (Z) it Oí.
)1
ii C=9tSubfunction #) )) A<> Cj, ÑZ it Errcr l)
l) li i)
i) II Uses: af li
)! I) NOTE: Subfcns O&2Needeá I)
jl __li _,_ -_J:
This Subfutict iou reaci'z. the f'i i"¶.[ correct Ilj ini'orrriat inn ericountc'reg on ¿-i
track. There' arc no eriíry parameters for this function other than tht: Drivúr
and Suhfunct ion nuriíbc'r. Aflag 1g3 returned indicating whether or not errors
occurred. An error inciic: at€':> that no reco7nizable Sector ID could be read q!j
the disk. In tl1o9.t cases,.. this is due to an incorrect Density sett inp in the
Bicis.
NOTE: This funct ion requires that Subfunctions 2(Set Head &Drive] and 3
(Set Floppy Disk Mode) are called first in order to establish the physical
characteristics of the disk.
40
B/P BIOS PRCRRAMM!NC
!t
iFunction 31 (xx5'ñ Return Floppy Drive Status l
!
!FJoppy SubFunction 1C)
!
Enter: B=1(Floppy Driver) Exit: A=Status Byte of last opnj
C=10 (Subfunction #.) BC =FDC Controller Type i
HL =Address of Status Byteil
Uses: AF, BC, HL :
{NOTE: Subfcn 2Needed li
This function return: ,Ült? scatus of the current Jy-selected drive. There arc
no entry parameters for this function other than the Floppy Driver and Fuñe-
tion nuniber. On €xit. the ra"ñ' unmasked status byte of the drive. or the !ai-í
operat ion depending on the ccmtrol ler type. is rcturned along v\'iti_i abinarí"
number represeníim the R")j cc)l"}[rcl]Er ívpc (e.p. YS, 92tjm j": "2, ctc.l.
NOTE: Thi -; rout inc assun|ey that Subfunct ion 2(Set Plead &brire )híís bt-·cn
cal led béfcw"t: this rout. inc [g) select the Physical ParanieteI"g1.
!"""""""" """ """"""" "i;
iFur,ction 31 (xí57'l Format Flopfw íjií.f. Track )'
)1 FiOPP'v' SubP"uríctior, 11 I)
d' L
t— _. _ _.__ _ —--__- -.. -.-_ J:
l"""" ")T __ ""_ _"j;
)) Enter: H: -2µc)ir",tey tc) 3ata Bioclj) Exit: A=O, Zero Set (Z) it CM )1
V
D=#ot Sectol"3/1"rac;·¿ ii A<> U, NZ Erro: " li
)E=#ot Bytes in Gap 3li i
V
I) e=1(FiolXw ['river") !Uses: AF,BC,ÜE,HL I)
)! C=" 11 !Subiur',ction #) iNOTE: Use Subtcn 10 tor Cont 1í'pel)
'-—— li __ _--;j
I'
ThiSk Sub iu;íct!cf!"í forn",: i1> ¿"¿ coriípiete trai'E: Oíl one sick of aFloppy !ñsk. lt
assume: --, tiaí tht- )íodú .Hc'aci,/I: :" i\"c' .Track ,aiM Sector ha': e al reach" been >.c: t.
On entry. Hi. rc)!l2tg- íCj d¿"Át¿_í required by the controller to t'orrríat atrac! -
This \ü'.í"icr, beL\q€: erí controllers, so RETDST should bc called to cjeterIÍii1íU'
contrclk'r type bef'ore set t inE up data structures. On entry, E) mum aiÑo
contain tiíc· number of" Sectors pt'r Track, and Eiriust contain the nuníber
bytes to u:'c· for Gap 3in the floppy format. On exit. A=() and the Zero flap
is Set (7) if the openítion was sarisfactoriíy completed. A<> Oand the Zeri-"}
flaµ cleare: ' CCZ )if' errcrs occurred. This routine may alter ail pr iniarr
register: -t.'\F,BC,bí ,HL :'.
NOTE: Thi sroutine' assuníc's that Subfunct ion 1() (Return Floppy Drive Statú:
has been called first to determine the Controller type and insert the COTl"é'2t
inf'orníaí ion in the- Format Daut Block.
41
PF?O'U2AMMING B/F' BIOS
HARD DISK SU13F(JNCTÍONS.
These funct ions are auai Iable Lc) direct ly access Hard Ijriues connected br ¿j
SCSI type imerface. They are accessed by lc)adin? the desired funct ion ríurtíbei"
in the Crepister. loadinµ a2(SCSI driverl into the f3 register and call int:
or jumpiñfz to jump nunibei"' 31 in the Bios entry jump tablc. Since this inteí-
face is not as standardized as Floppy funct ions in order to handle SASl as,
well as SCSI devices. the interface has only basic functions with tñ€· pi"ecisü
operaticms specified by the ljser in the Corrmand Descriptor Block passeti v: ith
Function 2. While this places aµrc'ater burden íjñ User programs. it al!cni"s
more flexibi lity to take advantage of changing features in the: T1é\\tA" ,SCSi
dr i\'és: ."
i
)Function 11 (xx5D) Set Hard Disk Addresses i
)Hard Disk SubFunction O i
\
ii
lf! '}
I) Enter: DE =Address of Data Area I) Exit: A=#Bytee in Comnd Block ))
i B =2(Hard Disk Driver) li ::
li c='3 (SubÍunction #) iUses: af li
,| l:
This SuM"unction Áct:'i the User 1)atíí ,^,rt·z Address for D:Ü"'3cí 9"! I'..: .anti
returns thc nunílm" }j\"t t9: ·, ¿U"¿fj lab le in the st: s'n Conimanci 1)lscj" iptc: rFi icÑ'i..
Tñí-' Íj'áí& .\rtm iín: 'n 1):_' AF Lí.,\9ji" Si :tÍ)\"i€s' Jon;: and j;j used to store elata to 1)c
\Q'rjtFer1. an'l [('p rüct' ivt: t."¡,it¿i rt"a"i frúm the' j-.L"lc2c[e(! (jT!\"E. Tius kíüi Ai't·ií
Ñi ze iSÍ irla!)'"la'Lor}" '-- GlC.í- q]2byícs ¿¡f'-' al"\í'¿¿y: 3. returned Í"rcm adi recl acc'e>,> J;'i
y
orcic" :" to h¿z: }(]!t thú \':jciz' \"¿"¿j'ict\" cj" controller tyDe S TéC'C'f2.ñl 7éCl ] n t|j:; }S/7'
TÜq: -, cj·"i\"¿!": j. The nU[llbej cd" byíeu á\_Ái íaMe in tríe' Coínrííand L'escripu't" Fúoc_í'
í',ithin tin- pi[':".íc:il ¿jr¡',"c'l" i.g ü>u: t!lr !() in orck.r to handle- the exíu'njed s'.-gj
c(?ll|]l)alid.¶. but m;: :"-' >±¿: 1|c'(j })¿"l\-.!: 1() tj in i1b: Ítcd app] ications.
I"" Ft.mction 31 ': >:ú:5í),) Set Physical &Lcgicai Ürivj"""")
'i Hard Fmsk SubFunction lI
t___Át
i—-- —"_ '"""""jj
lEnter: A=Device Byte 15.2.1) !Exit: A=Pnysical Device Bit ii
i) E3 =2(Hard Disk Driver) Iii
)) C=1(Subfunction #) )Uses: AF ))
This Subiunction sets the Physical Device bit in the Esios for SCSI accesses
and the i-oµicai tnit Xumber in the SCSI Command Block (Byte j, bns "-Si The
format of' the Ijerice Fsyte prorided to this routine is defined in the (onj'i?u-
ration Data. Sect ion 5.2. i. (: C)\'FICr+6l. and is arailahle froní the Extended r)]sk.
Parameter Fieacic'i" at DPii-- j.On É'ú.it im thiq routine. abyte is returned with a
"()nc" bit In the prorw i" tjo: ,i tion lin t=Oc\"ic¢' 7..jSÍt C) =beí"ict' C'} to
se ic'ct t.hc· (jc'7l] ¡"í"C tv"ii t\"iií 2. st' s_i con1[í1¿·il"l¿j.
42
L?/P BIOS PROGRAMMING
__il
(i
Function 31 (XX5Lj) Direct SCSI Drive!" i
k
-Hard Disk SubFunctiorí 2
jI
iEnter: DE =Ptr to Comrui Desc B1k! Exit: A=Bitl Status, Flags Set
iA=Oif No Write Data H=Message Byte Va)ue
'l A=FF if Data to Writej L=Status Byte Value l
E3 =2(Hard Disk Driver) !,!
)C=2(Subfunction #) IUses: AF ,BC,DE,HL- li
)NOTE: Subfcns O&1Needed li
ji li ||
This Subfunction períorms. the actions required bu the coníriíand in thí' spt-'cif'¡t"'.!
(":om!!land beRc]"ir)tor F!1ock: .1hc flag provided in Registe: "Asiµnif'ie: ' wi"íethcu"
or not w.c'r data is: tcí bt' "nritten by this cc)rjjrlía;íLi. It set tc' ¿j Xon-ü.t'ro
\"á lüt: .T)(ág1 froití the' area speci j led 'ñ'ith Funct ion Owi.i !be: posi tioned Í'(j¡"
SCSf 'Yij"i u.' opt'rat ions. .·','l tht: encl ul the roui inc. 512 byt eu. art-' aj\\'ayl) tran: ':-
t'errui !7cri": the FÜlj> 1(: itui"t'ci" tCf tht' l': -.crs Space' set by Subfuncticm (), Thi >2
ñiíi\" Míric'ff icl '3iji .bíu ".':.i:· the. only \'\"¿j," kc c'ou Id accommodate 'l ht: wide \'á i" 1€'t i"
gii cijf'"i"{: ;L':zí ,S..'S, i ,./ ';t'."';.] corn :"cñ lerx \'\"itíiiñ reasonable code constraint" .T!it
y.|¿: 7tl:. 1"t-ÍL!1"I)-j(' ctí cmíij'lei 1()h of' tj"lig, function tho" Status hyte maskc·d \f.itij
ti"r_' '. i"µ-';j, i:ii ,jú' i.i"i'í\j fui IStatu"- Fs'\ te and 3íc'ssagt" IWlé Í'roni SCM c)rjeI"¿i-
tLc'ñ·', :ií"t" ¿j| :>c }'T(3"L"ic!€'(l for nic"rt' dt:i]n}[ic)r1 of any errorx.
NOTE: I!"hi.-, rot: tNÉie' ¿L>;>u¡,lt.\ thitt tiíú (':olIlIÍ¡¿i!j(! bescriptor FRocK has been rr"c]!"'!.'l" ly
c(7.: :!'iz'UI"c-(j Íc:c t-lit-' type g't' ikii"d ñis: kcontrol lei" set in B/P l3ios. anü thai tht'
>a' ice Leci d itj.. i'. l?rQrL'r i;" aeg;cribe(i ti!" necebs¿íT\") in thz" ]íiQy üí: :CiCiju-
t!c)1"i>. Tirro i':-. in phaviríµ jt-"-mit in r]"Lj,qralí! ex itand \\arit i\(jC: I[ .]la"7".u:l!¿".
the' user hai: cal lej i-uríct 1(ji)> C' tSet ilarj 1)1 :-.}. :\ddIe>st-y,! am i:>.t-'1 }"'í"íysn :
X- [.("gjc¿i: t'r i\_t-'g '! tpC![)!"L' ú'>tiµ tl":is'. Subium'- tu'l).
li
Functu: í", í'j? í.>jtÓ'f) Set Bank. Tor Far jurrpi'Cal"!
)1
li'
---- -------- r-— -—-- ------i)
)) Enteu: AX" Dem reel baíú, Number )Exit: None. )1
))
'Uses: No Registers
i)
l i
This F'unct ion sets the ban!: nurnhc'r for alater Funct ion 33 jump to arout inc
in an alternate \1eníoru" Bank.
43
PRCX72AMM!NG £?,'P mos'
))
Function 33 (Xx63 :' jump to (Hi-) in Alternate Bank""" i)
"
I
-))
Enter: HL =Adciress to execute lExit: <Unknown> Called routine ii
in Bank set w/Fri 32 lsets return status i)
Uses: All Primary Regs (assumed) li
Yi
This Function switches to the bank numher prerious!y specified with Function
32, then calls the rout irte addressed by HI-. Upon compiet ion. operat ion re-
turns to the bank from which called, and the address on the top of the stack.
ri
li Funct ion 34 (: ·:X65) Clear Stack Switcher )
I)
Enter: k'l =Ádcj!" to resume exec
li Exit: None. Execution resumes
I)
I) in entry bank i) at addr in HL in entry bank )1
{'
li !1 Uses: No Registers i)
ll :i
Thi sFunc't ion is u«': l|"qi" error e': its froní bankeí'i rout inc's, to rúturn íü tht'
ent ry bank: .
1|
l,.
)Furction 35 ':x):t;q} t_oaa A,fRL) Írom Alternate 3ad· li
IÁ'-"____""_ '"""" =" ""V"_)'
i'
I) Eriter: 14L =AcÉr desired byte I) Eíit: A=Byte frorí C:HL l,
i) C=E)e¿í1relj Eaí"ú Nuír,j> ii i)
!ii Uses: Áf I!
j;
_—-.
i!
,_,_.__ _)!
it
This i'"uncr ío: i,2€'tj. a!";"íc /:.-'-mljj.' i'rom the- spt'cif led lían!. anti Adciresm. "i'l": í
bank' is teIrl!"UjraTi j;." g;',',';, tchtíi I!", c'cmtc: ','. t'í.j;" the acces> 1.!(' réquiret_i', [1\ j'¿
restored to t: iiíi"\_ cQ]"!(litic)l1': .7ntt'rrupt>, arc- te[llpQ1"a]"ily disabled duí"inc' tht--
brief accéí^, [J!!r..'.
i!
'i Function 3t3 (Xx6C Load DE,(HL) from Alternate Bani-'. l)
lii !1
)Enter: HL =Addi- of desired word I) Exit: DE =Word from C: HL I)
C' =Ijesi red Bank Numbe'" lj )1
g'
ii jj Uses: af,de l!
ji li }'
This Iuncíion fZéíS aVh'C)I"¿} {l()-birs) from the speciíied Bank and Address. The
bani: is tení¡"'orai"'i ly sñ'ircheá in context for thtí access', li1requi red) .thúñ
reF.tQ!"ecl to cní: u" cÍjñ.-iit"io'Éí. Intcrrul"tE a:etemporarily disabled durinc t"i'\t:
brit"!' ac: ces:- tJii: t:.
4A-
B/P BIOS PRCRF'.AMM!NG
Ii
Function 37 (xX13F) Load (HL),A to Alternate Bank !
J;
Enter: HL =Addr of Dest Byte Exit: None. Byte stored at C:HL
C=Desi red Bank Number
A=Byte to save at C: HL Uses: AF
This Function saves aByte (S-bits) to the specif'ied Address and Bank. The"
bank is terüporari ly switched in context for the access (if required j,then
restored to entry condit ions. Interrupts are temporarily disabled during the
brief access time.
I__ 'ii
j; Function 38 (XX7Z) Load (HL),ÜE to Alternate Bank: li
,y
Il
:1 Enter: DE =Word to store at c:i-h-j Exit: None. Word stored at C:Fii )
l'i) Hl =Adar ot Dest Word il,
'r
ii C' =Desired Bam Number iUses: AF j!
I
ji ———- , u—- -.,-. -- .- -—. —.—--
SR
"itii>j l-u:2:¿[iot"! g)a\"c-!, a'L',¿'q!".j ¿i\- hi tSj lt.Cf the spe': :if led ,icidrcsg: ¿;n(: í_3aríi .II iíc
bari3: !-. leíl"[p()!"¿&!"] }\' s,': ií'.:ht' i;;j ¿(-"/[jtt'Kt for tt'gÚ áccéM: .':
it rt'¿!ui](-: '."il, thc'ti
rt---)'L\""rt"\": t: "" t';t'.1")" ct): jcj:¿i()!j .Íl2',t?! l"tl¡?í Sc.rc tenipcnari ly ciisaiñec! durin;í ÜíL
t'"""" """
i) ru!",cT¶r3'T 2'Z' u»7t)Í' Return Currerrt Elane'. in Context )
UF,
it
_"""" |I '_========A )
I! triter: Ncíre li Exit: A=Bani'. currently active l:
g
li iin Acic!t" Ü..7FFF'R i:
li lj Uses: ap i'
ji -— 1( t;
This: Furicí Á)i"í ryturr]y, the- Memr;." Bank current ly in Context in the adcire: >:!7
ran,2'? of (i. .FJ"li!. Je ñíá\" be useá in rhe 'where arii T" role in appí icat icn
!jrc)?raRí'·} to track memory accesxes.
4b
PROGR!\MM!táG E,.'F' B1C)Y
5.2 Bios Data Structures.
5.2.1 Conñguration Area.
Much of the ability to tailor FS/I' Bioses to your specific operating rieecÉ, is
due to the standardized locat ion qÍ' many discrete elements of data. and a
faci Iity to easi iy locaíe and chan7e them. regardless oÍ' the particular hard-
ware platform in operat ion. Bios Function 30, Return Bios Addresses. reports
the base address of the Configuration Area in the or register pair. ñ"t this
section. we will review each of the specified eletnents, their functions, and
which parts of the data must be rigidly controlled to insure that the supplied
utilities continue to funct ion. as well as guarantee the portability of" otheí'
programs .
CONFIG-6 -Bios id. Character String, 6bytes.
This character su"inp MUST bmin with rhe three characters "B/P in [Jppc' rc?,·.í-·
Asci i.followed by three \'ei"sion-speci Í"ic ident if yiñfz characters. As ?4arc!í
!993, the fol lowirw icient if"ier: ·i hm'c' been assi.znec: to systems:
"B/P-YS" YASMU"'
"B/P-AM" i\riipru litti€' Hoarc! IÓ()
"B/P-18" '\l]cro)ll.nt SLí-lSó
"B/P-CT" Conipu/l iriíc Si()() Board Set
"B/P-TT" it-k·tei
"B/P-XL" intei liµcru (omputÚr besiµ'ñ> xt-: \jlb?-.'
CONF1G+O -IOBYTE. Byte.
This byte contanís ífiú ini ciai ciL'!'lniT ittñ ot" the byte" p!a':É.'g at ot !·j;-'. -") OIl
tht' base Paµc ll: .)l,'í{.}.íl:: d.a: iny aCc'icl íiCjtjt an'i (jE'terl7!ir}c's \'Áicíi íji ti"tt j|.]'.};
cicíined chara. ec: u.' dt-'\"ic.L: :. ',', iti Dc usú't_i a'. the (onsolc' .:",ú\7 iií: r'" ¿Áñ "! lu"i'ít-
ei" cíc\"icé". 'rm- (1L't¿tu!í .gUt [inµ ñl."i\" be ai terecl I)'." !Si'(""\!'("j Ii) reí' lc'í-t cII: irlgc't!
ci€\'icí-' c("}rlí"iµ'Lj!"aL Ictñ'·.. or ti\" reag)scEÁ!) iy Üí' iM i'sicj",.
Th's' bit ciej"jI"!l[i(7ji> in Üli.4 ti)fc ¿:
¡"t:
Bit 7 6 5 43 2 1 C)
l t 1Console Device
iAuxiliary Input Device
Auxiliary Output Device
Printer Device
CONFIG+1 System Drive. Byte.
This byte cor}r,"iing, the clriu: which v: iil be accessú'ci aftc'r aCQ)ci Boot cnÁ i',
assumed to contain the CWeratinµ SYstem fi les. Ii is ?t binarr value where /' =
.
O. Fi =J...F' =IF.
4f3
LL/P BIOS PROCRAMM!K!C
CONFIG+2 -8ios Option Flags. Byte.
Thi s!)\"[€' consists of' j,7(;i\"i'!ual]\" mapped bits \t"hich ciisplav which opí iQñs art'
active in the assembled Fiio"n The bi ts listed as <résérved> should not be
defined \t'ith(.)ut prior coordincn ion with the systerií developers to preclude
coMí icts wi th planned enhancements. The bvte is currentiv ciel'ined as:
-.
Bit 7 6 5 4 32 1 O
L—— O=Unbanked Bios 1=Banked Bios
O·Bank in RAM 1·Bank in RON
lO=DPBS Fixed 1·DPBS Assignable
Q=ALV/CSV in TPA 1·ALV/CSV in Bank (ZSDOS2)
<reserved>
The nexn firc t'ytcs def ine the memory riiap of abanked system in 321: sjic: t?":.
For acomplete desc|"iDtioí1 of Hank allocations. please refer to Section 4. In
non-bariÉ cui S\"StC'ñt- .a! )é-\"C€'f'¿ the RAM Drive Bank should a! lbe set u? (). l !"
na níe!r[{: )1"\" i>á"\"ái ícíÉñt. Í'c7 ie-as': si znntent as aRAM drive. this byte wc: li
should be sci to l").
CONFIG+3 -User Bank. Byte.
Thi:sÑ\"tü ref"lecú :-: T)jl' íi:ín!. riunihc-r reserí"ed for íjséj" Appj icrit iorís.
CONFIG+4 -- TPA Ban¢':.Byte.
This í\\"té rel" lt'ct qÜ!t· h:zn!: nu!íi!"")cj" reÁc-r\'L-cl for rhc" Trans icnt PJ"O?I"¿"tlji Arca in
tiZt ?,ci(í;"g"'- I"álí2c C'í t.). ."Fit-ii. 7!íZ ne': tsequent ial bank rit'ni5cr ijj ncrrun !l\"
the (-Ol1IHlC)!i í·an É·: ñhAli r: i\'.'(i:'.""] rt.íñu 1tj: ·. i n(""ont t'g' 'L inthz" ?.c!cirt."-" in,-' !' ¿"iñ m-'
:-)U()(_:'. .íTU"!i a:"ici C(")líT,.::':· t!:,'" 3{. j'¿¿ti: )g S: \">[e[íl. Fsit"" am-i 7.-Sy"-ít'tt tables.
CONFiG+5 -- SYStem Bari AByte.
Thi ::, H\"ú-' !"c'fl{.-{.'íj t1'1(-· fs¿j' .r]'j: !"|!"'t"r conE¿lLI')in§ any e': €"c"Uíclp)Íf.· C:C)t.it-' ani"i :i'íi i:
SPt'Ci'A jé" j'gi" t:íc" g.yÍ'.t.¿'|ij imrj-.
CONFIG+6 -RAM Drive Bank. Byte.
Thi :> b': t'-: reUt"c ts[í}'_- '",íarú M? iMíni: num!?t.i!" íí\"c: iiablú for usc' as at::A!: I.'!" !',"t .
Itis ¿'lgRunlc": jin ucii :f.á'\í i"i"oií: tííiÁ iimrú tErouszit tne Ma: ': iwjií: banÉ |\'ulrlb€· ;" i:'
cont i?L]Ou'j ann ¿i',_¿¿i][íl-\!f. ¿j;" a KA.! PI_1\"€ .
CONFÍG+7 -Maximum Bank Number. Byte.
This byte ret'!ec'tb the nuniMr of' the last available bank of RAN the sjj5.té!Íí.
In many gpyster;í^, ir may be set to different numóers depending on the number Qt"
RAM ciíip.r instalh-'d ir: íhe system.
CONFIG+8 -Common Page Base. Byte.
This io\"tt' refleci>: the Fiase Page of' the Common area in systems which do nL}t
ful j\" corííplv with the 32É. !vkmon" Bankinsz architecture m" B/P Rios, but can I)(í
(-
made somewhat conípí lam .This Ryte ríiust be AT LEAST 80H. but may be higher if'
needed.
CONFIG+9 -OPEl Size. Byte.
This byte con[ai11" the' lentuh c.! L'isk T'araµ¡j[e'r Fí!oc.Í ¿fj locatio,"ís wühin the'
bi c'" .Sirtct' ñ'('j'c' iríforním jc;q"; :>neecieci thaií '-he J5 byte:', defined by iji fzi ICÜ
47
PROGRAMMING B/P BIOS
Research in CP/M 2.2, an exrmííed format is used. .AI lre-assignnmerñs ol' f)1';k.
Parameter data shouíd use this byte to determine the size of records.
CONFIG+1O -Number of DPBS in Common RAM. Byte.
CONFIG+11 -Number of DPBS in System Bank.. Byte.
These two bytes indicate the complete complement of Floppy 'Disk formats arm l-
able within the Bios. In most cases, one of these two bytes will reflect a
zero value with all Disk Pararríeter Blocks resident either in the Conirüon area
or in the System Bank. The provisions are available. however with these two
bytes to split the definiUons for custom versions without voidinp the' support
tools provided.
CONFIG+12 -Pointer to first Common DPB. Word.
CONFIG+14 -Pointer to first Banked DPB. Word.
These two words point to the first DF'B in asequential list vc'ithir'. rhí· respec-
tive níeniory banks for Disk Parameter Blocks defined in the preceding. bytes.
In most cases one of' these two words wi li be aNull pointer (0'j()()Fi} c(")rrL'--
spondinµ to no data as descriheci in the count brte.'. abm"e.
CONFIG+16 -Initial Startup Command. String.
Thi> striny cL)n'Lajn> cM t'it"gt co!í}niancl 'A'hich will be initiated on a CQicj I]q:¿7("·[.
llí is icmdt'ti ijítcj the Multiple (j.oRíAlar}(j buffer defined in the F.n\"irol1i!!c'r}[
rl¿scI"irtQr (St-t- S.ZA! and cal jjj afile of the specified name with a'type-' c'i
' (.:O:b:" .The' Ñt rinµ may iíá\"c" up to eight chai"acters anti lüúSt be \ui l-terrúinateci
le'nG mrlí aFinary (Ü. Tiít-' mring is def ined así:
Byte -Number of Characters (Ci..8)
String -8bytes tor ASCii characters (usuañy Uppercase)
Byte -Terminating Ñ'ji) (binary U)
CONFiG4 20 -Pointer to Environment Descriptor. Word.
This viorú poiní> to the" first byte cA" an e:':tended 7.34 !m': irormú·nt whicl"í '."..'ST
bqzin on a Págt: hc!un{ja1"\" txx()()í!j .Sec Sc"ction S. s. !for acoriiplete dcscrij"-
tion of the Zñ\'i ronment bescripror and FI/T' i3ios unique features.
CONFIG+28 -Banked User Flag/Eank Number. Byte.
Thi y; Fiyic 1Ñ7í\' Ik' usc'ci á"\ ¿q flat" to jn(iica'LE whether or not aÜSm'!" 7kuÉ ::·-
Ciet' iñ€'ci. Fsank, Uc'annc'í Mused as'. aUse rbank by decree Qt' the systeF!í au-
thorx .Theretore. if' this byte contains abinary O, no User Flank is awiil-
able .
CONFIG+29 -Pointer to Start of Banked User Area. Word.
This word contains the acidres¶ of' the first available byte in the Bankea User
Area ,ii one' e:íist:"r. Routines loadeci into the User bank should contain a
standard RSX heackr structure to link sequential prog.rams and provide aprirü-
ti\"c' níeniory management t"unct ion.
CONFIG+31 -CPU Clock Rate in Megahertz. Byte.
j!"hi sbyte must contain the processor speed rounded to the nearest Me;zahertm
Ii may be used 1)\' sofus"are tirííing loops in appl ication and uti lity pro?rarüs to
adapt to the clock .spt"úd o! the ho.'u cooiputer and provide an appro: timí± Íiútc.
48
B/P BIOS PROGRAMMildG
This H\"lc' is :"efiectcd in the En\"irorl!]ient L'escriptor (sce 5.Z.4 .i a> Vjtj'ii f't"'r
programs whi ch are 7-Sysíení "amzrc' .
CONFIG+32 -Additional Wait State Requirements. Byte.
Thi sbvt"t: is "nibbl e-mapped" to reflect the nuníbt'r of wai tstates: nettled for
merííory aruj JO accesses when these funct ions can be ser via software. In the
Z80/ZlS'ó, JO port accesses hare one wait state inserted wirhin the processcu".
This byte does not account for this fact. and reflects wait states IN ADDTTÍOY
TO am' which are built into the hardware. For older processors such as tht'
79,(), theme bytes normí iy have no ef t'ect since additional wait states rnvst bu
added 'Á"i th hard"4'¿ir€ .
CONFIG+33 -Timer Reload Value. Word.
In níany svstenís, Interrupts or Tinier values are set by sof"[ware-confi?urablr: :
c:ourítdown tiriíerm the l6-bit value at this location is reserveci for sE: ttir!!7
the timer value and ñ)á\" lx "f ine tuned' to ajicnr the srs: rem to Rlaintain cor---
rece rime' in the' pre.3c';act- Qj c'ioc'k f'requt'ncic's which mar dcriate frorii D1"C'í-l,íi
i"rec!u'3ncj¿: y, nec'ueúí 1()1" accürau-' clock:-:.
CONF lG+b5 -Floppy Disk: Physical Parameters. Table.
Tiíis tai.lt· coñm",¿b Üt' four 5-M"tt-- t:míriei-. which contain inlormat ion on u["
four rl"ly>jc:l! ci:"i\"e>.. !íach enr 1"\" i': defined as:
Byte O-T'i-(j"\-1c1'-·: -> bai,t' fl-u" -'j)p}j "fY\"it. Bit mapped a:,:
Bit 7 6 5 4 3 21O
iliDisk Size OO0=Fixed Disk, 001=8", 010=5.25", 011=3.5"
O=Single-Sided, "l =Double-Sided
I<reserved>
O=Motor Always On 1·Motor Control Needed
O=300 RPM Max Speed 1·36Cl RPM (8" &HD)
<reserved >
Byte !-zj:::µ Rain' in líÁ ] i ]st-Conííj>.
Bytc 2-l!' ai? í,oiíá Ti ni'-- ir: riii !jisecond: '..
Byte 3-ik: OL'rjj(ja¢."l Tiníc in millis'.econcÉ.
Byte 4-!\'un¡i")t']_ cri "i raclc-. (t1"! incierx )on düvt·.
Those bits in Byte C) Mtich are listed as unused must be set to () since Éi'íi: --
byte' proridt-": the inir la! value stored in the XDPH when assipnable drives ar"_
used .For cQn[I"o]lc'7"y vihic: hdo not need the available intorwtatiorí (C'.?.
Vk'stern L'icti tal controliers cío not need hyre 3), these values rriav be" set to
any arbi trarr \"á iuc. but ST remain present in the structure to prevect
changing subsc'quenl adctreg,st·': 4.
CONFIG+55 -Motor On Time in 1/1Oth Seconds. Byte.
Tbi st1em.' mar be LR,écj in soníe U'pt-'s of Floppí" Disk control lers to keep íht-
drive rnotor.s spinrlin? for aspec'ii"ied time after the last access to avoid
de layx in hrimim the' spindle up to speed. Some controllers. notabiv tñt':
V\'esterr 7']gi[aj !">: -'c and i"xx series to not support this feature. In thi>
C'¢z"z¿;. rhú tj\"t erú:íy Mset. arre" arb itrary value. but MUST remin present .
49
PROGRAMMING B,/P BIOS
CONF iG+56 -Motor Spinup Time in l/1Oth Seconds. Byte.
This time is the deiav which will be imposed by the F'ios before uueiíipt inµ to
access aFloppy r)isE. árive when it senses that the motor is in astopped
condition. Pror'idinµ such adelay will mininíize the probability o! data
corruption bv \"¥riting to disk which is rc)[atinE! at the incorrect speed.
-.
CONFIG+57 -Maximum Number of Retries. Byte.
This byte specifies the nuínber of attempts which will be tnade on a Hoppy Disk
access before returning an error code. In some cases. such as diaanostic
programs, it rnay be desirable to set this value to Ito identify soft errcr"s,
or ones whic'h fail on the first attenipt. but succeed on asubsequent try. V\e
recommend avalue of 3or 4based on our experience. Larµer values may re.sui e
in inordinately long delays when errors are detected.
CONFÍG+58 -Pointer to interrupt Vector Table. Word.
This Word contaim the address of the base of an Interrupt Vector Table which,
vi'hen umc!. ccmíains pomter: i to service routines. The precise definition of"
the tablt' is> not standard i7eci and niay vary considerably between systerts. Thi s
pointer se.rrt'" univ iq ;v"Q\"iciÚ an éás\' and standardized method O!' loca': inµ the:
table for re-def'znit ion of s)e7""\"1ceÑ qi" system features.
CONFIG+6C -SCSI Controller Type. Byte.
To ac'conÍní(7cí¿1[E' the' widt'st í"aritüy of di ÍÍerent cont rol Iers inc!U(iIT],2 tñt- cÜdc'r
sas! n1c){:jt'¡s. this' byte is defined a> containiñ9 abrtt' code to the' specific
ñíodt: lbe lñ12 umi'd. lri íriosT ca: 'n.u,. this bríe has littit' .if am' et jj¿'¿ \i"itñui
4
rhú I3ios, but rrl[Á\" ijá\_€- sicaí l"icanr" É-Í'féctís on Hard iii SÉ. L)iagnQjz[ ic prc)gT"¿-i!: i:--..
or L"ser-Uie\"el(jt)c'L"i ilit !é'5. Any adiiir ions to tiij $uíb!e shoulci Mcücm: í:i-i -
€·cj with the authors to }]"l>ü¡"t 'haí ihc stanciar'i su1)poTE uuj :íies. cor: u:íuc 7-('
function. current "lei jnit ic)!)4 ¿j["t-';
O-(")1'\' l
1-Adat'\L (- i!'. T'-4{'7"l[l.'.
2-A"L·!)r--': !4l(').L]/µ!"l'j7¿¿I"í |(f¿: j-3 tSt\.Si)
3-Sc?s2í: te SCú·:
4-Sñuí'art |:.pjÚ-¿ l: 'lini|lL¿"ii $t""Sí sL}!")s': 'rl
5-S'í-SÁ--Z C\é"'¶'c i(:(?l'jnt'! .l..)]-ían[un¿ am !\'Í¿¿í¿("}z" cIr i\'"t's l
St)
B/P BIOS PROGRAMMING
CONFIG+61 -Hard Drive Physical Parameters. Table.
This rabie consisrs of three 'i-bvre entries defining up to three physical Hard
ljr l\"éS .Whi le the SCSI definition allows for more units, three was considered
adequate for most systems. If addi tional drives are needed, p) ease contact
the authors for methods of including them wi thout invaj idating any of thtz
standard utilities or interfaces. Each of the three entries is defined as:
Byte -Physical and Logical Address as:
Bit 7654 3 2 1 O
IlIPhysical Device (000-1108, 1118 reserved for HOSt)
<reserved>
O=Drive NOT Present, 1=Drive Pre8ent
Logical Unit Number (OOO-111B) for controllers
capable of handling multiple drives
Word -Number of Phvsical Cylinders on Drive
Byte -Number ot' Usable F'hvsical Heads on Drive
Word -cylinder Number to "bezin Reduced t\"rire Currenr
Word -Cylindcír Kuníbe'r to begin Write Precompensation
Byte -Step Kate. This byte may eit.her be an absolute rate in mS (")1" ¿";
code basej on control ler-spc"cific definí tions
FOr many c'Í" tht' ne'ec'r corít]"("Tl 1e?i"s. the la::]t three items may not híí"t'ú am"
l)í¿'an: !]? in ts'hich casí- thev csiE 1)¿· set to any arbitrary value. AiSCt in nc'u"er
cíí"i\'""",. the' pM"sicctl chr"LtacterjsíjcR such as the numbc'r of cylindu'"" anti Ma"" \
may bu hiciúk'n \\'i ÚÜl2 thí: dr j\"c- ei€'c{ TOll ics \'\i th re-rriappecl \'á I'-ie's. pi'o\_ itíed td
thc: com: 1"(_)]iei" \" iii \_",2[ 1(j.!: , S'S { cQntwta!!d$ .Át\ with rhe last thiu:t' en:ries. ;n
th,! ñcc!s€' .t!íC-;í" [j|¿'i\ bt: sgt ec' am' arbi tIúíi"\' value-.
.
C"ONFiG-i-S8 (Reserved Bytes). }1"v"l' H\_ec: sace reserí"ec! tor futL|Tt- eµ: t)aTj:>}c)il.
CONF !G+íí3 -- Character Device De1"init-io: _ís. Table.
I"Ms t:"ihlc: CoIlS ist.: Qi jQ_z!T or ñíore lb-byte (S-tn'te in B/l-' vc'rsií'n>-. prior ící
l.i )e:ñí"i€s anti lh'j'7Á bu tt-3'líÍlna¿e(! l":ya\'ulj (binary Zero) byte". !:,ac"h entrr
dCfiñe: .the I']f-i1ÍK: a:r"i c|)¿"¿ra¿'[e1"ist ics of' acharac'ter device in the s\"steni. Tht'
fi rst jütT OÍ" these arc' cÍ! rect jy auai iabie Íoj" select ion m" the IOFÍYTL as tht'
(" onso le .Aux i l. iai y1(1 anú T'r tmeí"". Cnher entries maj' be cíáinecí and excharl?€'g
with the :ii"'u Iou!" iq make them accessúñe to the system The entries ai"e
ch" iincd as :
String -Four Ascii character Name as: COMl, PlOt, NULL. etc.
Byte -bata Katü capabilities as:
Bit 7 6 5 4 3 2 1 O
l i i i Current Data Rate 3etting
Maximum Rate Available (Bits-per-Second) as:
(jodo ·None 0001 ·134.5 0010 =50 0011 ·75
0100 =150 0101 ·300 0110 ·600 0111 ·1200
1000 =2400 1001 ·4800 1010 =9600 1011 ·19200
1100 =38400 1101 ·76800 1110 =115200 1111 ·Fixed
c;j
~t
PFKJGRAMh4lNG B/P BlO"-
Byte -(:onf"i?ura[ion Fip"te defined as:
Bit 7 b 5 4 3 21 o
o=2stop Bits, 1=1stop Bit
O=No Parity, 1=Parity Enabled
O=Odd Parity, 1=Even Parity
O=B-bit Data, 1=7-bit Data
O=No XON/XOFF, 1·XON/XOFF Control Enabled
O·No CTS/RTS, 1·CTS/RTS Control Enabled
O·Device NOT Input, 1·Device can be read
O·Device NOT Output, 1·Can Write Device
Byte -Input Data Mask. Bit-mapped byte used to loµ.ical1y ANK with
bytes read from Device Input.
Byte -Output Data Mask. Bit-mapped byte used to !oµically AYI) with
bytes before beirl? output to device.
Word -E'o:rÍt€"r to Character Outpúl routine.
Word -Fúinter to output Status routirie.
Word -F'ainter to Character Inpur routine.
Word -Pointer to Input Status rourine.
NOTE: 7he last four pcñnters are not at these iocarions in Fill? hio.s \"£·rsic)ns:
prior to l..j .but were accessed bu apointer returned by hiü,s T'uncziorí 1(/.
5.2.2 Dis k. Parameter' Header".
The Disk Pm canierer ltí.adcr ', l)7'iíi is aio"ica! data structure" requireci I'o} each
,
ciísk drive in a(i-',/)i cornpat il"'ie liisk Upérat ing Srstenn it consi>tb cU" a
series of" eight poinrc'rs, which contain addresses orher irerús needed 1)\" the
DDS as wtÑl as sQ!}"ié scratchpad SP,flC9. "!"ht" ÁCicWC'gs of the bPi-i associated v\'ittí
afñven cj1"l\"e is rürurnc'c! by tht· ]-Qos, atít'ir asuccesstu! scÑection v\"iti"t Fuü'g
Functicm g. li" Errors c'ccur jijrin.2 selection. or tht' drive cioes not eu: iu.t. a
\"uli Pointer tí')(")0(')i!:'is returned.
For Wp Fsiotv. ll v\'cí>, necessary to add an addi tionai four hytt'> u") tztcl'í T)Ít1
which ccmtain aci('ii[ic)nRl inform: íí 'ion on physi caí and logicai pararntú él".4 a',
well a.s tiag' ir]f(jrn"j¿1ti("7i]. Tht'se additional bytes are rcferrc"d '.c) au thu
Lxtendt·cl rmi. or Ñ.'P!i. 'ñ'hile sirüilar in concept to the extE'rl.qic)n ackiect
CP/Y 3. the implementation is different. The Ñ)Pf] prepends the DF'Fi and rüay b'-
accessed by decrement iñ? the returned adciress. As aconvention, ljPib in I3/i-'
!'$ios source code have re,serí"tcí certain label sequences for ,speciíic types oí"
unit s'A th I)pH0L)-i)pijj9 used f'cs I"íoppy Drives, L)p|f5c}-DpF!¿sg for Hard Tkivt:
Partitions and DPF!90-DPH99 for KAY brives.
An ern ire DPfl/XI.}i'i[ block is requi red Iq!" each logical drive in aFj,/i' tsio: .
syst eni. While SOllíé pointers, such as thc· pointer to the Directory Bufier, may
be' conirrion across anuniMr oí' drivem for most systenís, the other i[errí5 will
point to unique areas.
The r)pF{,/ú])r'li €'lelílc'nijA at- inUÍL':¿tj-.! írotii the bPi'l addresses accessible LCj appÁca-
tion j)rc),2rdÍl]: ': art: ·:
52
B/P BIOS PROGRAMMNG
DPH-4 -Format Lock Flag. Byte.
AZero value indicares that 'the formar of the disk is not fixed. buí níav be'
changed .II" Ue Bios "ñas assembled with the Auto-select option. the Bias \,\'i li
scan a number OÍ" different formats in order to identify the disk. It" a(JFFH
value is placed in this byte. it indicates that the format is fixed and cannot
be changed .This is normal ly the case for RAM and Hard disk drives. as uel i
as for alien floppy formats which hare been selected in the emulation mode.
If the Auto-select opt ion was not chosen during assembly OÍ' the F$ios, a! ]
Floppy L'isk drives Y\"i ii also have aOFFH byte in thi.s position showing that
the formats cannot be changecl.
DPH-3 -Disk Drive Type. Byte.
This M."te is bit mapped and contains flaRs indicatinp many parameters of the
drive. For Flopp\" brires. this byte contains a copy of the first bvte in tM-
Physical brive Table (See $.2. 1, cO\'FlG+35) with the two reserved bytes s:et
during tM drive .4€'iéci 1c)!? r1"oce}Fy. The byte is then defined a",:
Prive Type Éjíte
Bit 7 6 5 432 1 O
{IlDisk Size OO0=Fixed Disk, 001=8", 010=5.25", 011=3.5"
O=Single Suled 1=Double Sided
O=Single Step Drive 1=Double Step Drive
O=Motor Always On 1 =Drive Motor Control Needed
O·Max Speed 5.25" (300 rpm) 1 =8" &HD Max Speed (360 rpm)
O=Double Density 1=Single Density
For liard l.'ixk l'c:r_íit 1c·!!>, anti tht' k-Aú.l t"'rive. this bvui is not used and is :@t-t
ro al l'-éTc.s indic': -n ll1£' ti ]"j": eci í.'r j\"é type.
DPH-Z -Driver llj NumDer. Byte.
Three Driver Íl"vpe's art' üs'.:din IM basic B/P lqios coni'igurat ion. A Zercj vaíüt_'
!n(jjcarc: :. a\(: )!:-t.:t!6ter)t di i\"cr, with other values used to direct disk access-
es ro the respi'c't i\"t' cc'ck' appropriate 'co the device, Basic cj{"i1rLt"(j driví:
types eú: ísn Icj!" Piop¡'µ F.'im: '.' i :', Ha-rd Disk via the SíS! interface (2). and KAY
Disk (í). :íyou \Á'isi"í U"p exTenci this table ["o inc: .luát" tailoi"e:id:ri\"e1"::).
please consult wiítí tht' authors to preclude possible conflicts with piannúti
extens ions .
DPH--1 -Physical Drive/Unit Number. Byte.
This byte con'cainu. 1ꒆ Physical Drive or Unir Number host ing the lo?ic,i'
dr ive .For F'ic-)rry Drives, this v\'i li usuailv be in the rancte of Oto 3fa:"
"b—
four drives. Hard dr i\"és niay have several DPils shariñf the sanie physi caí
drive number. whi je Uj sÍ"iÉ'jcf is ignored in the siñ{üé RAM drive supported !!1
the distrihution Fs/h' íáos, version.
NOTE: The Phys icai Drive Nuniber byte for Hard brives is comprised of t\'\'Cj
fields to ease handiiñf' of" S'. SI devices. Up to seven devices (deuice 1118 is
rc"ser'."e.: itor rim-' !'!o:' i'."onÍt'ur€'r) eac'h harinp up to s!_..ocical Units niay bc·
dt'fiñtA. 'Me' R\"1u is CCrÜ ,szu."eú am
53
PROGRAMMING El/P RIO":
EbYsica1, Driv.e Numbe_r
Bit 7 6 5 4 3 2 1 o
IIIPhysical Device (OOO-11OB, 1118 reserved for Host)
<reserved>
O=Unit Not Avai7ab7e, 1=Unit Active
Logical Unit Number (000-1118)
DPH+O/1 -Skew Table Pointer. Word.
This word contains apointer to the Skew table indicator. It rarely is used
for Hard and RAM drií"es. but is required in Floppy Disk drives. If the Bios
was assembled usinp the Calculated Skew option, the address is of aFsyt€ whose
absolute value indicates the numerical value of skew (normally in the ranpe of
1to 6) used for disk accesses. This terní is often replaced with Interleave'.
and is synonymous for this purpose. II" the value of the by[e is negatiu: .it
means that the sectors are recorded in askewed forni on the cíj sk and thm
Reads and V\j"ité.f> shouki be sequential. If the value is positive'. then an
aigori thn't is cal i€^cí to ccunputc aphvsica! sector number based on the desi reü
lop'ica! sectmr and tiíf-' skew t"actcv". Fo!" sn"stenís assembled without Calculated
skem thiq 's'ord pointü to atahle' of up to 3) bytes which must be indexed v: ith
the dc"ui reel i'hys ic'a !Sector nuniber (O. .Maximuñí Sector Number) to obtai nthí-
(1)j"rUspQrí("}ln,2 !'i "ik Sector nunibür.
DPH+2 -Dos Scratch Worcie,. 3Words.
these thret-' :c'orci" au-· a': ai jahíe tor Uc 1\cís to usc" as. .it require" .j\"(") f.! '1-·í!
\'ájUéb are a.xg)i?r: €'ci. nor are nícanims Íl)!_ the data StcjltÁ there oí' am" \_áív€'.
DPH+8/9 -Directory Etuher Pointer. Word.
This word püiñH: Ii) aí3.-i".'"te L)izta artm that iÁ tí>eci tor I.'irectcm" sÚ;_'!"c'i_!'£: :..
7( is uR'.í?"ll !y acc)R!nlL"?i_! arca u. a.i ií.K'it' uiri aYc"stc-ni and is frequent 1\" upd,ítt'cj
T
bu Ur' bog} in norniat um .
DPH+1O/1I -OPE Pointer. Word.
'l'hi': wor'.í points to anothc-'r ciata 4rucrure which derails ñi,2ñ\" of íhc' iogic: í!
paj"atr!e[c']"y. cit tnc' seíc'ctecl CÍl"l\'t? or partí tion. its structure is detailed in
Sec'tion f·.2.; b¿']Q',\. brires. Cit the same type anct logical cont" imirat 1otj rá"":
share bPí3 ciel irlitL(jn: ¿,. so it is nor uncommon to finci the bPFi pointer" iu
difterent !'PH structurt-u. pointing u) the same art'a.
DPH+12/13 -Disk Checksum Buffer. Word.
This word pc"ints to ascratch RÑyÍ buffer area for remov"able-mc: dia ciÍ"i\'é> use: i
to detect disk chan2e: >. Konnaí ¡y this t'eat'.ire is used only for Floppy Disk:
br ives, and isdisab led bv contain ing aZero word (()0001!) for Hard an: jl RAY
drives. Poi" rjoprp\" [.)ri\_ts, aRAY area with one byte for e'cery four di.rectoru"
entries {i3¶-t'yte :sectmü is neecit'cí (See 5.2.3, DPli+ll/l2). This scratch ?,1"étz
canñol bti shared anlon? CGivtcj.
jr should he noted that in aful lj" Banked Fl/P Filos system with ZSLX)K, tríe
Chec-ksuíu buffer 16 placed in the System Bank anti not directly accessible by
app] icat ions p1"c)£jral|"l: '" .
RA
MY
"X
B/P BIOS PROGRAMMING
DPH+1 4/1 5-Allocation Vector (Al-V) Buffer. Word.
This word points to abit-mapped butter containing orm bit for each allocation
block Oíl Ue sU.iect drive (See 5.2. 3. DPB+5/6 j. a"1" bit in this bui'Íer
means [ha[ the correspondinp block of data on the device is already allocaieú
tQ afile. while a"O" means that the block is free. This buffer is unique [.o
each logical drire and cannot be shared among drives.
Ir should be noted that in afully Banked b/P Bios systerr! with ZSlX)S2, the Aj"-\"
Buffer is placed in the Svstem Bank and not direct íy accessible by applica-
tions programs. ooiñc€j access to the Al-V buffer is frequentiv needed to COIhf'-
ute free space on drires. ZSbOS2 contains an added funct ion to return di: -,k
free space .Using this caí lallows applications access to the inforníat ion
I\'i[hoUt direct"lv accessim the data structure.
5.2.3 Disk Parameter Block.
The bisk t'aramtc·r bluck (É'F'I3: is adata structure defined by bicúíal Ke: -j¿:a:"(:li
for CP,/!v1 w!"ncÉí cic'i'ines the iogica jconfiguration of storape on mass síoragt'.
It has been expanded in 13/1-' Bios to include addit]c)na] informar ion to provick
enhanc ed fmii)] iit\" anti cr,pati i!jU". 'The expansion is referred to as [hc'
Extenütm [jpjí o!" XIu'm anci prepends Ehé actual DE'B structure. The address
the !'!-'IÉ my b'.· cMtaineci t.ron, the IJPH pointer returned by the Bios or De's afrer
acU sA k.C- ]t'c"t .iQr} (Sec' S.2 .Z abo': e j.Ali DPBS reside in the Common Memory area
and a!"E av"ai íah [l" a!'r !icat .i ons prog.rariis whether in aBanked or únbankej
susrerú. For the' sUe of aconvent ion, Úje ljl'bs are labeled in thí' same: niáñM-j
aaí)j'i!", u' jt¡"j !)}-'t-s(j': -i '! 'fcj'j l! sed Íor !' ]oppv ljrives .L)PB50-DI'£$.S'j for Hare: i:i" i\"t'
Part ition> .and !.l}."i¢'/l)—Lg'·; fc'l" N-\.'"i bt'i 'ces ,
The la\"c)].'i the' hi '"'i: í'aranícl c i" biocÉ: as inch"xed frorii the a\"a jIabic- hi't'
pcÜnt'.r ix;
DPB-16 -Ascii ID String. 10 Bytes.
Ibis StÜñ,2 s'¿'["\"€'s as an idení"i i'icaíion vcl'ich may be pririred tj\" aIj!)¡.ic'at ion: .
pro,2rar|ls such ax our Bi-'r{")l'|.!"Í.r'4.j .sstrinp inay be anil xeci aiphanurííeri cAsc'i j
set oí" up [Cj "ten charactúrs: .bur the last valid character niu±,t ha',ú' the M: rt
Sipr: i2"ic"aní !\it (Hit "' lSet Lg a"1".
DPB-6 -Format Type Byte O. Byte.
This brte contains scmic· of the informar ion about the formar O! the drive. a:){i
the lo&ica! secjuem ing inf orination on the physical medium. The bits in tnt'
byre hare the Í'oiiowinz significance:
Bit 76 5 4 3 2 1 O
lI I Disk Size: 000 =Fixed Disk, 001 =8", 010 =5.25", 011 =3.5"
Track Type
000 ·Single Side 001 ·Reserved
010 =Sel by Sec, cont 011 =Sel by Sec, Sec # Same
100 ·SO All, SI All 101 =SO A11,S1 All Reverse
110 =Sel by Trk LSB 111 ·Reserved
O·Track OSide Ois Double Density, 1=Single Density
O=Data Tracks are Double Density, 1=Single Density
55
PEOGFLAMM !h!Cz E3,'P E'!()S
Tor Hard Drives and RAM ijrives. this byte contains al IZero bits iq s7.zñ1Í\'
Fixed Media and Íorniat .
DPB-5 -Format Type Byte 1. Byte.
Uis byte contains adciitionai informat ion about the format of information.
The bits hare the followin? meanings:
Bit 7 6 5 4 3 2 1 O
l I I Sector Si ze: 000 ·128, 001 ·256, 010 =512, 011 =1024
Allocation Size: OOO=1K, 001=2K, 010=4K, 011=8K, 100=16K
(NOTE: This should match the definition in DPH)
<Reserved>
O=Normal Speed (300 rpm)
1=8" & HD Floppy (360 rpm) or Hard Drive
For Hard LuÚ\_.±j: .The' disjn"ibution version Qj" H/P I-tic:' anci the sunp'-'rt
útil i: les as,m-iníc' that the Sector siui' jg, always 5iZ hytei'.. Thti rernaininp Liin
mñoulcl be :-:et a> irlciicatc(":.
DPB-4 -Skew Factor. Byte.
This bute is asipñt'á i'iri: iiu" \"¿2]fjé indicat iruz the sketc" factor {u") l)t.' U9,ru
L
(iurin? l-orrn: 'n. Re¿_¿ci ano \Ú"1Íl ,ieis normal lv used only v\ ith 1ioppr |)j"j\."c>
anú usiualiy st?t to -! (()!'i'ii) ior iiarci and R.'\)l d.riues Iq irl(j]caí€" tñái 1'&u1'7: -
anci \ü"i Its sñüu id bt done \ii th J\c.) s:É:t'i', .I! the option to caicuiate SF-cw is in
eífect ciur tri,z tij()> :lss€'rlt?'!! .the Skc-"' pointer in the bPi! l!fi-'ll+(),/; )p'"inru ['
thi "!)\'i72. jf a<Ét"i': taDlú l'. uwñ, thr- 1"\"1£' has no úf'fect anu srlc)uic! bt uet
íc >,/.)jí.
DPB-3 -Starting Sector Number-. Byte.
This hrtt' C(V'Lcii!"!> tir-' nuni!)¿ r("i 'l 1í"á: fii>ít }"h\".fic¿'il Secrúi" on €'"ic» ¿["¿i; E: .
Sin'-ú !ílQj,\ jjj 'ü'pt- rat j;'jg S.:k"g'TL|!i:>, tí>í-- a tero4msú'd sequent ial schemt' tc' Te'É t- 'i"-
en "Éí' Ae: ctoi">. Ui."i \"7Jí!t' prcn"ití' :-. in'-- initiaí O! f"seí correct !c/.g1('{i! tq
phy> ica t.-C"CLÜJ"' !}u!Íjl")L'¡"",.
OPE.-? -Physical Sectors per Track. Byte.
ihis hyté: c'Qn[¿Ling', the nunmer of" Physical (as opposed to iol7ic: ai lSmcíors Ull
each traci. .For e.': anip!e, CP/tvt CQlñPü1X'S sectors based on 12fi-byte al locc: tion"
wni ch are used sinsz ie-úensi tj" :s Fioppy bisks. ()ne ot the popular Éí\'t'-
inch forrnau uses five IE: physicnl sectors which equates to 4() logical C1"/M
sectors. This byte contmns Sin this instance for the number of Ik Physica!
Sectors.
DPB-1 -Physical iracks per Side. Byte.
This byte contains the nurlíí)er Physical Tracks per Side. also called thc'
Xuníber cit c:yj inders. it reflects the Disk, as opposed to the Drive capabiii-
ties and is used to establish the requirements for doutÁe-stepping Üt Floppy
Mires .In the case of a4Ü-track disk placed in an SO-track drive. this byte
would contain 4(). while the Drive parameter in the Confjguration St--cinon
contains 9() a" thú number of' tracks on the drive. This byte has no meaning
for Hard hr i\"t" paru it .i ons or KA'J dr Ives and shou id Lx' ser tCj Zf?t1c a]th()!-: .L'h
any ari)¡[]"a1"\" ra!uc 1j3 ?.cc€'t7¿(ii)le.
5€
B/P EllOS PRWnRAK2M INC
DP8+0/1 -Logical Sectors per Track. Word.
This value is the number of í-oµicai l2:3-b\"te sectors on each elata track. o"! tPlt?
disk. It is ecjuiraient to the number of Phys]cal Sectors times the Physict-"i1
Secror Size M())) 128.
DPB+2 -Block Shift Factor. Byte.
DPB+3 -Block Mask. Byte.
DPB+4 -Extent Mask. Byte.
These three bytes contain values used by the Operatinp System to compute
Tracks and Sectors Íor accessing logical drives. Their values are detailed in
various references on CP/M and ZSLX)S prograrRmin? and should nor be varied
without knowledge cjf their effects.
DPB+5/6 -Disk Size (Capacity). Word.
This Word contains the number of the last allocation block on the drtvü. 1[
is the same as the capacity in allocation bioc: ks -l. Por exaínpl e, ii"
al locat ion bíc)ck..5 art" being used and ali) Megabyte drire is be lt12 clí'i'inc'cc
this word would contain jcÁoo(L()o0/40(x) -]or 249V.
DPB+7/8 -Maximum Directory Entry. Word.
1his \Lórc! conttiins the number of the last !.)irector\" Entry and is the' Sp"ínir: .- ¿q;"í
the Kuniber of Fnu"ies -!. For example. ii" !OZ4 directories are dt'5lj"£3("j. thi:-
"n"orci wouicl Í)l" set to it: Zj -!=1(R3.
DPB+9/1Ü -Allocations Oand l. 2Bytes.
7he")c: two i7n"teu hrici the :ntt'íai allocrnions stored i.n the jir"n t".'.'c'j tn"íú: iC'!
the" N-_\' ííu jfé!_ {Set" S' .:. Z. fñ'h+l4/ IS }durin.2 'ini t],. dri\_e sc'lecuon. Tnc lr
i)ri!Í1¿"¿r\" U6f- i.", Iq inmcain" that the-" Directorv Sectors arc" alreaciy al lL3c¿i[e(i
anci uríarai i,"1!7\ It- tCjj" elata stc)ra?€-. TÍk'\" are bu-mapped values and are u".od in
l!i-hvít·. i-()-l)\"L€· ic'i"ní a> c)DrF(jsÚc! to the normaliv used i..(3-b\"íÚ, !!i-t)y[L" st(j7"a.£E'
usézi iri /Yl.) tyrc' t.'!-'i. sf'o!" \'v¿Y"Cj s1oi"agm. "j"he bits are a!]c)c'a[e(i trcm Uk' 31M'
cl" thu Í"ir>: íjj,\"tjj thru the' !S!'. then MS!S íhru LSl' oí' the se-cone! H\"Íu r/asf£tj cu!
orie l: 'it pc rt: !íocat lO7"i !.)if:)C!. oí" ií"acricm thereóf used by the- I)lTec'tory. The
hi t±, níay ix:"CIt iculau--d i"y tir:ncorñp': ít inp the nuuihe.r Qt' entries peí" al Jocat ion
block. thc'n cii"\"i¿jln.2 the ciesireü number of entries by this nuniMr. Any re-
Ili¿íiT)ííe!" l"ecitíirUs ,2!1 aút"iit íon: jallocation bit.
Fo!" exaw.pi t', ii 4k ai iocat ion blocks are used. each block. is capable ol
40g(-: b/42 t"'ytti-"s pc'r entry =128 Directory Entries. If 512 entries are desired.
then 512/L> =4al location blocks are needed which dictates that AllocatAm
byte () would be i I 1.!ÜU()JB (OFOH) and AJlocat ion Byte 1would be OOL)()OO0OH.
DPB+11/12 -Check Size. Word.
Thi sV\orci isonly used in' removable media (normally only i" loppy brives )arc.
indicates Une nuníoer sectors on which to compute checksums to detect
chanped disks. jt should be set to OOOOH for Fixed and KAY bisks to avoid tlíc
time penalty of relogginp after each warm boot.
DPB+13/14 -Track Offset. Word.
This i\,oi"C in(ii: :7.[e:"b the nunibc-i" Logical Tracks to skip bt!'ore the present
!)i'i'¡ i" eÍjí'cíirt. ii is norriia! iy used to reserve' bcmt tracks'. (úsually jtcí
k7
U P
PROGR/'.MMING R/P BIOS
3), or 'iq part iticm larµer drive>, into smaller ioµic'al units Íj)\" skíppiní'
tracks used for orher drive deiinitions.
5.3.1 Environment Descri ptor.
The Environment Descriptor. referred to as simply the EN\'. is the heart oí"
what is now known as The Z-System. The most recent additions to the system by
joe Wright and jay Sa?e replaced some relatively meaningless elements in the
EN\' with system dependent informar ion such as the location of the Ciperat iñft
System components. Consequent ly, the EAV is not just afeature of the ZCPR
3.4 Command Processor Replacement, but is an Operating Systení Kesource uhich
allows other programs such as ZCPR 3.4 to access its inforruatiorí.
The B/P Bios requires an EÑ\" to be present, and uses several items of iniormii-
tion conrained in it. The banked ZSLXJS2 and Z4U Command Processor Replacement
use even rriore L\\ teatureñ. Afé','\ reniaining bytes hare been re-defined tor
>'-íp¡'ort to l3/P fj'](}s-ba>>ecl .sy,sten: x. To denote tht' definition of LS/P Bios data
t? lenients: .a rwa Tygc- .¢Kki. han been reserved. Usiñ? this "7ype" byíc'. uset
i)rogj"arIls. can access anc take ach"anta±e of the new deÍ init ions and featu.rt'm
A[enir)l¿¿[e t'cr iht: í'ñ.\ iromient ñescriptor used in B/l' bios. which tar: t"ü iíjx
ra!uwí ii"cm íht· ?..bii/\>i .i-lb tjié ¡!jcilldef:i in the" distribution disk is:
:K¥*ÁZYY*.8:!::7.µ.z'*.?:*>7"", Ük: k>-> f. ' ,-1 l"] T L) 7\ ****-;k***%: **:y'*->:.*y.:k?'*'f..*j-4:7-:t.
*ii' iuanstt iol]]n2 trnñt at: C:itjt-f operaíinsz environment whicn '-
*uses usei-ioadtu1 F.: 1\"ij"oríníL-"}í lilts such as Sí"S.EK",'. vou íÍ1UAZ *
"éitht.'r cieknt' .sücp" loa.l ¡n>rj"uc[ ions, o!" modiív the I'i!C\" Í"tié¶. "
'k to re! íecí tíjt-' EXACT loaaed :-n"s1ení aefínit ion. "
'i· }¿jj Jure' 1() ()l_)s.É'r\'"£' thi ui'ac'c \i.j iiprc)t)at: ':j" cauxe many *
*unc.lesnrúci side' e!it-ct: ñ :j'
*:&:&'2.&:¿:2.á'¿:'?:'i'i-A:A:z.a";l:z.8::;.g:a::t:z'z.a.z ¿:)±:Z:Z:.!:8 z:d:z'z:**a:*8:A.**±:&'*:A.a:&:z:d:**á:*A:*á:>'z:z"t-:·'
:Ervz ronment [jescri titor" for 2CPF?Ui
ERL'. JP O,Leacjzrig "tump (adCrems CBIOS when NZCOt4)
DEFE ' Z3Ehh/ ",Em'i rcnment ID
DEF E90!2 ;Env type (: =9'?E mear\"É E/P Extended EtfV w/User Area)
DEF\/ EXPFTH ;External path (PATH)
DEFE EXPATHS ;
DEFW RCP ;Resident command package (RCP)
DEFE RCPS ;
DEFW lOP :Input/output package (lOP)
DEFE Iop"í .
DEFW FCP :Flow command package (FCP)
DEFE FCPS ;
DEFW Z3NDIE :Named directories (NOR)
DEFE Z3NDIRE ;
DEFW Z3CL :Command line (CL)
DEFE. Z3CLS :
DEFW Z3E!IL' ;Env"i ronment (ENV) -Actual Stzrting Address
DEFE. Z3ER\'S :
C;µ
~"-d

Navigation menu