Make your own free website on Tripod.com

CP/M Plus (CP/M® Version 3) Operating System Programmer's Guide

 

Appendix E

BDOS Function Summary

Table E-1. BDOS Function Summary

Function Function Name Input Parameters Returned Values
0 System Reset none none
1 Console Input none A = Char
2 Console Output E = char A = 00H
3 Auxiliary Input none A = char
4 Auxiliary Output E = char A = 00H
5 List Output E = char A = 00H
6 Direct Console I/O E = 0FFH/ 0FEH/ 0FDH/ char A = char/ status/ none
7 Auxiliary Input Status none A = 00/0FFH
8 Auxiliary Output Status none A = 00/0FFH
9 Print String DE = *String A = 00H
10 Read Console Buffer DE = *Buffer Characters in buffer
11 Get Console Status none A = 00/01
12 Return Version Number none HL = Version (0031H)
13 Reset Disk System none A = 00H
14 Select Disk E = Disk Number A = Err Flag
15 Open File DE = *FCB A = Dir Code
16 Close File DE = *FCB A = Dir Code
17 Search for First DE = *FCB A = Dir Code
18 Search for Next none A = Dir Code
19 Delete File DE = *FCB A = Dir Code
20 Read Sequential DE = *FCB A = Err Code
21 Write Sequential DE = *FCB A = Err Code
22 Make File DE = *FCB A = Dir Code
23 Rename File DE = *FCB A = Dir Code
24 Return Login Vector none HL = Login Vector
25 Return Current Disk none A = Cur Disk#
25 Return Current Disk none A = Cur Disk#
26 Set DMA Address DE = *DMA A = 00H
27 Get Addr(Alloc) none HL = Alloc
28 Write Protect Disk none A = 00H
29 Get R/O Vector none HL = R/O Vector
30 Set File Attributes DE = *FCB A = Dir Code
31 Get Addr(DPB) none HL = DPB
32 Set/Get User Code E = 0FFH/ user number A = Curr User/00H
33 Read Random DE = *FCB A = Err Code
34 Write Random DE = *FCB A = Err Code
35 Compute File Size DE = *FCB r0, r1, r2; A = Err Flag
36 Set Random Record DE = *FCB r0, r1, r2
37 Reset Drive DE = Drive A = 00H Vector
38 Access Drive none A = 00H
39 Free Drive none A = 00H
40 Write Random with Zero Fill DE = *FCB A = Err Code
41 Test and Write Record DE = *FCB A = 0FFH
42 Lock Record DE = *FCB A = 00H
43 Unlock Record DE = *FCB A = 00H
44 Set Multi-sector Count E = # Sectors A = Return Code
45 Set BDOS Error Mode E = BDOS Err Mode A = 00H
46 Get Disk Free Space E = Drive number Number of Free Sectors; A = Err Flag
47 Chain to Program E = Chain Flag A = 00H
48 Flush Buffers E = Purge Flag A = Err Flag
49 Get/Set System Control Block DE = *SCBPB A = Returned Byte / HL = Returned Word
50 Direct BIOS Calls DE = *BIOSPB BIOS Return
59 Load Overlay DE = *FCB A = Err Code
60 Call Resident System Extension DE = *RSXPB A = Err Code
98 Free Blocks none A = Err Flag
99 Truncate File DE = *FCB A = Dir Code
100 Set Directory Label DE = *FCB A = Dir Code
101 Return Directory Label Data E = Drive A = Dir label data byte
102 Read File Date Stamps and Password Mode DE = *FCB A = Dir Code
103 Write File XFCB DE = *FCB A = Dir Code
104 Set Date and Time DE = *DAT A = 00H
105 Get Date and Time DE = *DAT Date and Time; A = seconds
106 Set Default Password DE = *Password A = 00H
107 Return Serial Number DE = *Serial field Serial Number
108 Get/Set Program Return Code DE = 0FFFFH/ Code HL = Program Ret Code / none
109 Get/Set Console Mode DE = 0FFFFH/ Mode HL = Console Mode / none
110 Get/Set Output Delimiter DE = 0FFFFH / E = Delimiter A = Output Delimiter / none
111 Print Block DE = *CCB A = 00H
112 List Block DE = *CCB A = 00H
152 Parse Filename DE = *PFCB See definition

NOTE: * indicates "the address of"

End of Appendix E

Continue in...
Top of this document
Index
Section 0
Main

page URL: www.bigfoot.com/~c128page/cpm3-prg/cpm3prge.htm
contact: c128page@bigfoot.com