Digital Research
This commit is contained in:
2020-11-06 18:50:37 +01:00
parent 621ed8ccaf
commit 31738079c4
8481 changed files with 1888323 additions and 0 deletions

View File

@@ -0,0 +1,88 @@
[READ.ME]
The Programmer's CP/M Handbook Source Code Examples
Version 1.0 August 18, 1983
(c) 1983 Johnson-Laird Inc.
W<EFBFBD> hav<61> trie<69> t<> includ<75> a<> man<61> o<> th<74> example<6C> fro<72> th<74> CP/<2F> <20>
Programmer'<27> Handboo<6F> a<> wa<77> possibl<62> t<> fi<66> ont<6E> 2 single-sided
single-density diskettes (or alternately, <20> single-densit<69> <20>
double-side<64> "flippy" diskette)<29> Ou<4F> origina<6E> intentio<69> wa<77> t<> <20>
includ<EFBFBD> th<74> sourc<72> cod<6F> fo<66> ever<65> figur<75> i<> th<74> boo<6F> a<> wel<65> a<> al<61> <20>
th<EFBFBD> exampl<70> listing<6E> i<> Chapte<74> 5<> Sinc<6E> thi<68> prove<76> t<> b<> impossibl<62> <20>
t<EFBFBD> fi<66> ont<6E> tw<74> diskettes<65> w<> hav<61> chose<73> thos<6F> figure<72> an<61> example<6C> <20>
whic<EFBFBD> w<> fel<65> woul<75> b<> th<74> mos<6F> useful<75> Th<54> onl<6E> majo<6A> omissio<69> i<> <20>
Figur<EFBFBD> 9-<2D> whic<69> deal<61> wit<69> ba<62> secto<74> management<6E>
W<EFBFBD> hav<61> fixe<78> on<6F> bu<62> an<61> adde<64> on<6F> lin<69> t<> Figur<75> 8-10<31> Thi<68> i<> <20>
note<EFBFBD> i<> th<74> sourc<72> code<64> Th<54> line<6E> whic<69> wer<65> lef<65> ou<6F> i<> th<74> boo<6F> <20>
afte<EFBFBD> pag<61> 26<32> ar<61> als<6C> included<65> Yo<59> ma<6D> notic<69> som<6F> mino<6E> <20>
difference<EFBFBD> i<> capitalization<6F> indentation<6F> etc<74> i<> th<74> comment<6E> wher<65> <20>
w<EFBFBD> hav<61> no<6E> include<64> change<67> mad<61> i<> copyediting.
W<EFBFBD> woul<75> appreciat<61> hearin<69> fro<72> you<6F> especiall<6C> abou<6F> an<61> bugs<67> <20>
typos<EFBFBD> othe<68> horribl<62> goofs<66> suggestion<6F> fo<66> improvements.
Contents of Diskette No 1
Filename Page No. Figure Title
FIG5-2.AS<41> 70 Equate<74> fo<66> BDO<44> functio<69> cod<6F> numbers
FIG5-3.ASM 74 Write console byte example, output null-byte
terminated message from specified address
FIG5-4.AS͠ 7<><37> Writ<69><74>consol<6F><6C>byt<79><74>example<6C><65>outpu<70><75>null-byt<79>
terminate<74> messag<61> followin<69> cal<61> t<> subroutine
FIG5-5.ASM 76 Read line from reader device
FIG5-6.ASM 78 Write line to punch device
FIG5-7.ASM 79 Write line to list device
FIG5-8.AS<41> 8<> Read/Writ<69> strin<69> from/t<> consol<6F> usin<69> ra<72> I/O
FIG5-10.ASM 86 IOBYTE equates
FIG5-11.ASM 87 Simple terminal emulator
FIG5-12.ASM 89 Display $-terminated message on console
FIG5-13.ASM 92 Read console string for keyboard options
FIG5-14.ASM 95 Determine the CP/M version number
FIG5-15.ASM 96 Reset requested disk drive
FIG5-16.ASM 100 Open file request
FIG5-17.AS<41> 10<31> Searc<72> first/nex<65> call<6C> fo<66> ambiguou<6F> filenam<61>
FIG5-18.ASM 110 Read next character from sequential disk file
FIG5-19.ASM 113 Write next character to sequential disk file
FIG5-20.ASM 115 Create file request
FIG5-21.ASM 117 Rename file request
FIG5-22.ASM 122 Set file attributes
FIG5-23.ASM 123 Get file attributes
FIG5-24.ASM 126 Accessing disk parameter block data
FUNCTN33.ASM 131 Example for function 33, read random
FIG5-25.ASM 135 Create random file
FIG5-26.ASM 136 Read/write variable length records randomly
FIG6-4.ASM 159 Simple BIOS listing
<EFBFBD>FIG7-5.ASM 191 Example PUTCP/M
FIG7-7.ASM 198 Example CP/M cold bootstrap loader
FIG8-6.ASM 226 Device table equates
FIG10-5.ASM 363 Testbed for real time clock driver in the BIOS
FIG10-6.ASM 365 Testbed for disk I/O drivers in the BIOS
ERASE.<2E> 41<34> Figur<75> 11-3<> request<73> confirmation before erasing
UNERASE.C 412 Figure 11-4, "revives" erased files
FIND.C 417 Figure 11-5, locates specific files or groups of files
SPACE.<2E> 42<34> Figur<75> 11-6<> display<61> ho<68> muc<75> dis<69> storage is used
or available
MOVE.C 424 Figure 11-7, "moves" files from one user to another
MAKE.C 428 Figure 11-8, makes files "invisible" and protected
or makes them "visible," accessible and unprotected
SPEED.C 431 Figure 11-9, sets the baud rate for a specific device
PROTOCOL.C 435 Figure 11-10, sets the protocol governing input and output
of a specified serial device
ASSIGN.C 439 Figure 11-11, assigns a logical devices input and output
to two or more physical devices
DATE.C 443 Figure 11-12, makes the current date part of the system
TIME.C 444 Figure 11-13, makes the current time part of the system
FUNKEY.C 446 Figure 11-14, sets the character strings associated with
specific function keys
Contents of Diskette 2
FIG8-10.ASM 237 Enhanced BIOS listing
FIG9-5.ASM 312 User-friendly disk error processor
FIG10-2.ASM 331 Debug subroutines
FIG10-4.ASM 355 Testbed for character I/O drivers
LIBRARY.C 372 Figure 11-1, commonly used functions in C
LIBRARY.H 390 Figure 11-2, code to be included at the beginning of
any program that calls LIBRARY functions in Figure 11-1