P8 Tech Ref Index
Page 182
Contents
Index
Index A A register ... 96 access ... 150, 153, 157 byte ... 13 accumulator ... 29, 77, 85 Active Entries ... 158 ALLOC_INTERRUPT call ... 35, 170, 111, 178 alternate 64K RAM bank ... 89 APPEND command ... 131 Apple II ... xvi, 98 Apple II Plus ... 98 Apple II SOS ... 176 Apple IIc ... 98, 143 Apple IIe ... 98, 143 -- with extended 80-column text card ... 89 Apple III ... 98 file types ... 176 Applesoft ... 121, 134, 142 assembly language ... 131 aux_type ... 39, 46, 50, 100, 157 auxiliary bank hi-res graphics pages ... 89 B backup bit ... 63, 64, 172 BADCALL ... 128 bank-switching routines ... 97 BASIC.SYSTEM ... xv, 82, 121, 124, 176 BEEP example ... 136 BEEPSLOT example ... 138 binary files ... 176 bit map ... 84, 150 BLOAD command ... 132 Block Entries ... 158 Block File Manager (BFM) ... 7, 28, 31 block number ... 115, 146 blocks ... 18 blocks_used ... 50, 156 boot code ... 176 boot ROM ... 22 -- disk drives ... 112 booting ... 22 BRUN command ... 132 BSAVE command ... 132 buffer ... 15 -- allocation ... 25 -- pointer ... 115 byte, locating a specific ... 166 C C-flag 29, 77 calender card ... See clock/calender card calls -- filing ... 33, 56 -- housekeeping ... 32 -- system ... 35 carry flag ... 122 CAT command ... 132 CATALOG command ... 132 catalog format ... 101 CHAIN command ... 131 clock/calender card ... 2,6,71,99 CLOSE call ... 13, 16, 17, 26, 34, 99, 104, 132 CMDADR address ... 108 Command Dispatcher ... 7,28 command list ... 134 commands, adding ... 134 CONVERT.program ... 3, 176 CREATE call ... 13, 32, 99, 104, 132 create_date ... 39, 51 create_time ... 39, 51 creation ... 150, 153, 156 -- date ... 171 -- time ... 171 creation_date ... 13 creation_time ... 13 D dash (-) command ... 131 data blocks ... 19 data_buffer ... 15, 52, 55 data files ... 18 date and time, system ... 71 DEALLOC INTERRUPT call ... 35, 107, 112 defaults (system program) ... 100 DELETE call ... 132 DESTROY call ... 13, 32, 99, 104 device drivers ... 142 directory files ... 3,17,18,176 -- reading ... 157 -- structure ... 18 disconnecting /RAM ... 90 disk -- access ... 16 -- controller card ... 113 -- device driver vectors ... 94 -- devices ... 95 -- driver routines ... 28 -- operating system ... xv, 2 -- RAM ... 91 -- volume ... 143 Disk II driver ... 113 disk-drive controller card ... 22 dispatcher code ... 87 DOS 3.3 ... 174 -- disks ... 73 DOS ProDOS Conversion program ... xv, 3 DOSCMD vector ... 131, 134 Page 183 E 80-column text card ... 99 emulation mode ... 98 enable_mask ... 58 endtry_length ... 154 entries (directory file) ... 17 Entries Per Block ... 150, 153, 154, 158 entry field ... 43, 47 Entry Length variable ... 158 Entry Pointer variable ... 158 entry_length ... 150, 153 entry points ... 94 EOF ... 15, 20, 67, 156, 164, 171 -- See also individual calls error codes (ProDOS) ... 77 EXEC file ... 17, 131 EXERCISER program ... 31, 180 EXTRNCMD location ... 134 F FBITS ... 126, 141 fields, pointer ... 148 file(s) -- binary ... 176 -- buffer ... 26 -- closing ... 14, 16 -- control block ... 14, 56 -- creating ... 13 -- data ... 19 -- directory ... 18, 176 -- flushing ... 16 -- logical size ... 67 -- naming ... 10 -- opening ... 13 file_count ... 150, 153, 154 158 file_name ... 150, 150, 153, 156 file_type ... 13 filename ... 10 Filer, ProDOS ... 176 Filer Program ... xv filing calls ... 3, 5 -- ProDOS vs. SOS ... 177 FLUSH ... 16, 17, 34, 99, 104, 132 FORMAT call ... 113 FRE call ... 132 G GET_BUF call ... 26, 34 GET_EOF call ... 15, 34, 177 GET_FILE_INFO call ... 32, 43, 99, 100, 177 GET_MARK call ... 15, 34 GET_PREFIX call ... 11,33 GET_TIME call ... 35, 99, 104 GETLN input buffer ... 105, 135 global page ... 84, 104, 141 global variables ... 25 GOSYSTEM ... 127, 129 H header entry ... 147 header_pointer ... 157 headers (subdirectory) ... 151 HELP command ... 141 hi-res graphics ... 89 HIMEM command ... 141 housekeeping calls ... 3, 32, 36-54 I I/O buffer ... 14, 69 I/O vectors ... 123 IN# command ... 22, 132 index blocks ... 19, 160, 162, 163 input/output -- buffer ... 14, 69 -- vectors ... 123 -- ProDOS vs. SOS ... 177 int_num ... 72, 73 interrupt(s) ... 2, 72 -- routines ... 97 exit routines ... 97 handler ... 28 handling calls ... 3 Receiver/Dispatcher ... 7 vector(s) ... 96 -- table ... 72 interrupt-driven devices ... 121 io_buffer ... 16, 33 -- See also individual calls IVERSION ... 97 J jump to subroutine (JSR) ... 29 K key block ... 146, 147, 151, 159, 162, 164 key_pointer ... 156 key_pointer field ... 36 KVERSION ... 97 Page 184 L language card area ... 106 last_mod ... 157 level ... 56 linked list ... 36 LOAD command ... 131 loader program ... 22, 146 LOCK command ... 132 logical block ... 146 LOMEM command ... 122 M MACHID byte ... 96, 98 machine configuration ... 98 Machine Language Interface (MLI) ... 3 machine language routines ... xv, 121 MARK ... 14, 15, 20, 65, 66, 164, 166 master index block ... 19, 160, 163 memory ... 98 -- calls ... 3 -- handling (ProDOS vs. SOS) ... 178 -- management ... 2 -- map ... 24, 95 -- page ... 181 min_version ... 150, 153, 157 MLI (Machine Language Interface) ... 3, 5, 15, 22, 23, 25, 108, 180 -- entry point ... 94 -- issuing calls to ... 29 MLIATV flag ... 108 mod_date ... 46 mod_time ... 46, 50 Modify Buffer command ... 181 monitor ... 142 N name_length ... 150, 153, 154, 156, 158 new_pathname ... 42 NEWLINE call ... 15, 33 newline_char ... 58 NOHELP command ... 141 null prefix ... 11 null_field ... 46 O ON_LINE command ... 33, 178 OPEN call ... 26, 31, 33, 132, 177 P pages ... 5 param_count ... See individual calls parameter count ... 31 parent_entry_length ... 154 parent_entry_number ... 154 parent_pointer ... 153 parsing command ... 140 partial pathnames ... 10, 11 Pascal area ... 156 pathname ... 10, 11, 13 PBITS ... 126, 135, 141 peripheral cards ... xvii pointer ... 18, 31 POSITION command ... 132 PR# command ... 22, 132 prefix ... 11, 132 ProDOS BASIC Programming Examples disk ... 3 ProDOS ... xv -- Editor/Assembler ... 176 -- error codes ... 77 -- Filer ... 3, 20 -- Machine Language Interface ... 5, 142, 180 PRODOS program ... 22 ProDOS User's Disk ... 3 ProFile ... 4 program selectors ... 86 Q QUIT call ... 87 R /RAM ... 23, 89, 143 -- alternate 64K RAM bank ... 89 -- disconnecting ... 90 -- reinstalling ... 92 RAM disks ... 91 READ call ... 15, 33, 113, 131 READ_BLOCK call ... 35, 73, 174 ref_num ... 13 reference number ... 15, 16 register, stack ... 96 RENAME call ... 13, 32, 99, 104, 132, 150, 153, 156 request_count ... 62 -- See also individual calls RESET vector ... 101 RESTORE command ... 132 result command ... 31 RUN command ... 131 RWTS (DOS 3.3) ... 174 S sapling file ... 19, 156, 160, 164, 171 SAVE command ... 132 search order, volume ... 23 sectors ... 146 seedling file ... 19, 156, 160, 161 SET_BUF call ... 26 SET_EOF call ... 15, 34, 178 Page 185 SET_FILE_INFO call ... 13, 32, 47, 99, 100, 104, 157, 172 SET_MARK call ... 15, 34, 66, 178 SET_PREFIX call ... 11, 33 SHOWTIME program ... 109-112 16-sector ROMs ... 113 6502 machine language ... xv, xvi 6502 registers ... 107, 108 slot(s) ... xvii -- and drive ... 100 -- 5 ... 113 -- 6 ... 113 soft switches ... 106 SOS file ... 177 SOS KERNEL file ... 176 SOS volume command ... 178 sparse files ... 161 stack ... 25, 89, 107 register ... 96 standard files ... 17, 19, 159-166 starting up ... 22 startup disk ... 22 startup volume ... 23 STATUS call ... 113 status register ... 96 storage_type ... 13, 36, 39, 50, 150, 153, 154, 156, 158, 159, 162, 163 STORE command ... 132 strings ... 140 subdirectory ... 4 -- files ... 147 SYSCTBL ... 129 system -- bit map ... 5 -- date and time ... 71, 99 -- failure ... 79 -- global page ... 22 -- level ... 16 -- prefix ... 55 -- programs ... 2,3,25,82 ---- quitting ... 87 ---- starting ... 86 T 13-sector ROMs ... 113 tone, '''Warning''' ... 101 total_blocks ... 151 tracks ... 146 trans_count ... 62 -- See also individual calls tree files ... 19, 156, 159, 160, 164, 171 tree structure ... 19, 36 U unit_num ... 52 UNLOCK command ... 132 V value ... 31 variables (global) ... 25 version ... 150, 153, 156 volume(s) ... 146 -- bit map ... 146 -- directory ... 4, 147 -- directory file ... 146 -- finding ... 100 -- names ... 10, 51 -- search order ... 23 VPATH1 ... 141 VPATH2 ... 141 W WRITE command ... 15, 34, 113, 131 write buffer ... 64 WRITE_BLOCK call ... 35, 73, 174 X X register ... 96, 122 XCNUM ... 135, 141 XLEN ... 135, 141 XRETURN ... 135 XTRNADDR ... 135, 141 XXX.SYSTEM ... 22, 82 Y Y register ... 96, 122 Z zero page ... 107
Tell Apple
Apple uses comments and suggestions from Apple computer owners like you to improve existing products and develop new and better products. Now that you've used this product, we want to know your thoughts and suggestions about your experience. Please use this form to tell Apple what you think.
Rest of card omitted
ProDOS Technical Reference Manual Quick Reference Card
ASCII Tables
Binary
Dec ASCII Hex 76543210
0 NUL 00 00000000
1 SOH 01 00000001
2 STX 02 00000010
3 ETX 03 00000011
4 EOT 04 00000100
5 ENQ 05 00000101
6 ACK 06 00000110
7 BEL 07 00000111
8 BS 08 00001000
9 HT 09 00001001
10 LF 0A 00001010
11 VT 0B 00001011
12 FF 0C 00001100
13 CR 0D 00001101
14 50 0E 00001110
15 SI 0F 00001111
16 DLE 10 00010000
17 DC1 11 00010001
18 DC2 12 00010010
19 003 13 00010011
20 004 14 00010100
21 NAK 15 00010101
22 SYN 16 00010110
23 ETB 17 00010111
24 CAN 18 00011000
25 EM 19 00011001
26 SUB 1A 00011010
27 ESC 1B 00011011
28 FS 1C 00011100
29 GS 1D 00011101
30 RS 1E 00011110
31 US 1F 00011111
Binary
Dec ASCII Hex 76543210
32 SP 20 00100000
33 ! 21 00100001
34 " 22 00100010
35 # 23 00100011
36 $ 24 00100100
37 % 25 00100101
38 & 26 00100110
39 ' 27 00100111
40 ( 28 00101000
41 ) 29 00101001
42 * 2A 00101010
43 + 2B 00101011
44 , 2C 00101100
45 - 2D 00101101
46 . 2E 00101110
47 / 2F 00101111
48 0 30 00110000
49 1 31 00110001
50 2 32 00110010
51 3 33 00110011
52 4 34 00110100
53 5 35 00110101
54 6 36 00110110
55 7 37 00110111
56 8 38 00111000
57 9 39 00111001
58 . 3A 00111010
59 ; 3B 00111011
60 < 3C 00111100
61 = 3D 00111101
62 > 3E 00111110
63 ? 3F 00111111
Binary
Dec ASCII Hex 76543210
64 @ 40 01000000
65 A 41 01000001
66 B 42 01000010
67 C 43 01000011
68 D 44 01000100
69 E 45 01000101
70 F 46 01000110
71 G 47 01000111
72 H 48 01001000
73 I 49 01001001
74 J 4A 01001010
75 K 4B 01001011
76 L 4C 01001100
77 M 4D 01001101
78 N 4E 01001110
79 0 4F 01001111
80 P 50 01010000
81 Q 51 01010001
82 R 52 01010010
83 S 53 01010011
84 T 54 01010100
85 U 55 01010101
86 V 56 01010110
87 W 57 01010111
88 X 58 01011000
89 Y 59 01011001
90 Z 5A 01011010
91 [ 5B 01011011
92 / 5C 01011100
93 ] 5D 01011101
94 ^ 5E 01011110
95 _ 5F 01011111
Binary
Dec ASCII Hex 76543210
96 ` 60 01100000
97 a 61 01100001
98 b 62 01100010
99 C 63 01100011
100 d 64 01100100
101 e 65 01100101
102 f 66 01100110
103 g 67 01100111
104 h 68 01101000
105 i 69 01101001
106 j 6A 01101010
107 k 6B 01101011
108 I 6C 01101100
109 m 6D 01101101
110 n 6E 01101110
111 a 6F 01101111
112 p 70 01110000
113 q 71 01110001
114 r 72 01110010
115 s 73 01110011
116 t 74 01110100
117 u 75 01110101
118 v 76 01110110
119 w 77 01110111
120 x 78 01111000
121 y 79 01111001
122 z 7A 01111010
123 { 7B 01111011
124 | 7C 01111100
125 } 7D 01111101
126 7E 01111110
127 DEL 7F 01111111
File Types
file_type Preferred Use $00 Typeless file (SOS and ProDOS) $01 Bad block file $02 * Pascal code file $03 * Pascal text file $04 ASCII text file (SOS and ProDOS) $05 * Pascal data file $06 General binary file (SOS and ProDOS) $07 * Font file $08 Graphics screen file $09 * Business BASIC program file $0A * Business BASIC data file $0B * Word Processor file $0C * SOS system file $0D,$0E * SOS reserved $0F Directory file (SOS and ProDOS) $10 * RPS data file $11 * RPS index file $12 * AppleFile discard file $13 * AppleFile model file $14 * AppleFile report format file $15 * Screen library file $16-$18 * SOS reserved $19 AppleWorks Data Base file $1A AppleWorks Word Processor file $1B AppleWorks Spreadsheet file $1C-$EE Reserved $EF Pascal area $F0 ProDOS added command file $F1-$F8 ProDOS user defined files 1-8 $F9 ProDOS reserved $FA Integer BASIC program file $FB Integer BASIC variable file $FC Applesoft program file $FD Applesoft variables file $FE Relocatable code file (EDASM) $FF ProDOS system file
- Apple III SOS only; not used by ProDOS.
For the file_types used by Apple III SOS only, refer to the SOS Reference Manual.
MLI Error Codes
$00: No error $01: Bad system call number $04: Bad system call parameter count $25: Interrupt table full $27: I/O error $28: No device connected $2B: Disk write protected $2E: Disk switched $40: Invalid pathname $42: Maximum number of files open $43: Invalid reference number $44: Directory not found $45: Volume not found $46: File not found $47: Duplicate filename $48: Volume full $49: Volume directory full $4A: Incompatible file format, also a ProDOS directory $4B: Unsupported storage_type $4C: End of file encountered $4D: Position out of range $4E: File access error, also file locked $50: File is open $51: Directory structure damaged $52: Not a ProDOS volume $53: Invalid system call parameter $55: Volume Control Block table full $56: Bad buffer address $57: Duplicate volume $5A: File structure damaged
Refer to Section 4.8 for a more detailed description of these error codes.
ProDOS MLI Calls
4.4.1 CREATE ($C0)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 7 | +---+---+---+---+---+---+---+---+ 1 | pathname (low) | 2 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 3 | access (1-byte value) | +---+---+---+---+---+---+---+---+ 4 | file_type (1-byte value) | +---+---+---+---+---+---+---+---+ 5 | aux_type (low) | 6 | (2-byte value) (high) | +---+---+---+---+---+---+---+---+ 7 | storage_type (1-byte value) | +---+---+---+---+---+---+---+---+ 8 | create_date (byte 0) | 9 | (2-byte value) (byte 1) | +---+---+---+---+---+---+---+---+ A | create_time (byte 0) | B | (2-byte value) (byte 1) | +---+---+---+---+---+---+---+---+
4.4.2 DESTROY ($C1)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 1 | +---+---+---+---+---+---+---+---+ 1 | pathname (low) | 2 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+
4.4.3 RENAME ($C2)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 2 | +---+---+---+---+---+---+---+---+ 1 | pathname (low) | 2 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 3 | new_pathname (low) | 4 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+
4.4.4 SET_FILE_INFO ($C3)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 7 | +---+---+---+---+---+---+---+---+ 1 | pathname (low) | 2 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 3 | access (1-byte value) | +---+---+---+---+---+---+---+---+ 4 | file_type (1-byte value) | +---+---+---+---+---+---+---+---+ 5 | aux_type (low) | 6 | (2-byte value) (high) | +---+---+---+---+---+---+---+---+ 7 | | 8 | null_field (3 bytes) | 9 | | +---+---+---+---+---+---+---+---+ A | mod_date (byte 0) | B | (2-byte value) (byte 1) | +---+---+---+---+---+---+---+---+ C | mod_time (byte 0) | D | (2-byte value) (byte 1) | +---+---+---+---+---+---+---+---+
4.4.5 GET_FILE_INFO ($C4)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = $A | +---+---+---+---+---+---+---+---+ 1 | pathname (low) | 2 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 3 | access (1-byte result) | +---+---+---+---+---+---+---+---+ 4 | file_type (1-byte result) | +---+---+---+---+---+---+---+---+ 5 | aux_type (low) | * 6 | (2-byte result) (high) | +---+---+---+---+---+---+---+---+ 7 | storage_type (1-byte result) | +---+---+---+---+---+---+---+---+ 8 | blocks used (low) | * 9 | (2-byte result) (high) | +---+---+---+---+---+---+---+---+ A | mod_date (byte 0) | B | (2-byte result) (byte 1) | +---+---+---+---+---+---+---+---+ C | mod_time (byte 0) | D | (2-byte result) (byte 1) | +---+---+---+---+---+---+---+---+ E | create_date (byte 0) | F | (2-byte result) (byte 1) | +---+---+---+---+---+---+---+---+ 10 | create_time (byte 0) | 11 | (2-byte result) (byte 1) | +---+---+---+---+---+---+---+---+
* When file information about a volume directory is requested, the total number of blocks on the volume is returned in the aux_type field and the total blocks for all files is returned in blocks_used.
4.4.6 ON_LINE ($C5)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 2 | +---+---+---+---+---+---+---+---+ 1 | unit_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | data_buffer (low) | 3 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+
4.4.7 SET_PREFIX ($C6)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 1 | +---+---+---+---+---+---+---+---+ 1 | pathname (low) | 2 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+
4.4.8 GET_PREFIX ($C7)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 1 | +---+---+---+---+---+---+---+---+ 1 | data_buffer (low) | 2 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+
4.5.1 OPEN ($C8)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 3 | +---+---+---+---+---+---+---+---+ 1 | pathname (low) | 2 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 3 | io_buffer (low) | 4 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 5 | ref_num (1-byte result) | +---+---+---+---+---+---+---+---+
4.5.2 NEWLINE ($C9)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 3 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | enable_mask (1-byte value) | +---+---+---+---+---+---+---+---+ 3 | newline_char (1-byte value) | +---+---+---+---+---+---+---+---+
4.5.3 READ ($CA)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 4 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | data_buffer (low) | 3 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 4 | request_count (low) | 5 | (2-byte value) (high) | +---+---+---+---+---+---+---+---+ 6 | trans_count (low) | 7 | (2-byte result) (high) | +---+---+---+---+---+---+---+---+
4.5.4 WRITE ($CB)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 4 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | data_buffer (low) | 3 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 4 | request_count (low) | 5 | (2-byte value) (high) | +---+---+---+---+---+---+---+---+ 6 | trans_count (low) | 7 | (2-byte result) (high) | +---+---+---+---+---+---+---+---+
4.5.5 CLOSE ($CC)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 1 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+
4.5.6 FLUSH ($CD)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 1 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+
4.5.7 SET_MARK ($CE)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 2 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | (low) | 3 | position (3-byte value) | 4 | (high) | +---+---+---+---+---+---+---+---+
4.5.8 GET_MARK ($CF)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 2 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | (low) | 3 | position (3-byte result) | 4 | (high) | +---+---+---+---+---+---+---+---+
4.5.9 SET_EOF ($D0)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 2 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | (low) | 3 | EOF (3-byte value) | 4 | (high) | +---+---+---+---+---+---+---+---+
4.5.10 GET_EOF ($D1)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 2 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | (low) | 3 | EOF (3-byte result) | 4 | (high) | +---+---+---+---+---+---+---+---+
4.5.11 SET_BUF ($D2)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 2 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | io_buffer (low) | 3 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+
4.5.12 GET_BUF ($D3)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 2 | +---+---+---+---+---+---+---+---+ 1 | ref_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | io_buffer (low) | 3 | (2-byte result) (high) | +---+---+---+---+---+---+---+---+
4.6.2 ALLOC_INTERRUPT ($40)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 2 | +---+---+---+---+---+---+---+---+ 1 | int_num (1-byte result) | +---+---+---+---+---+---+---+---+ 2 | int_code (low) | 3 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+
4.6.3 DEALLOC_INTERRUPT ($41)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 1 | +---+---+---+---+---+---+---+---+ 1 | int_num (1-byte value) | +---+---+---+---+---+---+---+---+
4.7.1 READ_BLOCK ($80)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 3 | +---+---+---+---+---+---+---+---+ 1 | unit_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | data_buffer (low) | 3 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 4 | block_num (low) | 5 | (2-byte value) (high) | +---+---+---+---+---+---+---+---+
4.7.2 WRITE_BLOCK ($81)
7 6 5 4 3 2 1 0 +---+---+---+---+---+---+---+---+ 0 | param_count = 3 | +---+---+---+---+---+---+---+---+ 1 | unit_num (1-byte value) | +---+---+---+---+---+---+---+---+ 2 | data_buffer (low) | 3 | (2-byte pointer) (high) | +---+---+---+---+---+---+---+---+ 4 | block_num (low) | 5 | (2-byte value) (high) | +---+---+---+---+---+---+---+---+
Errors in this manual The following errors were noted in this manual and faithfully reproduced:
- page xi: two consecutive sections labeled B.4.2.3
- page 2: the caption for Figure 1-1 is missing
- page 24: memory map lists $300 twice
- page 28: "management" misspelled as "mangagement"
- page 60: param_count is missing "(1-byte value)"
- page 70: param_count is missing "(1-byte value)"
- page 83: memory map lists $300 twice
- page 95: "unprotected" misspelled as "uprotected"
- page 99: "calendar" misspelled as "calender"
- page 108: "the the" instead of "the"
- page 109: "calendar" misspelled as "calender"
- page 111: the two routines are in each other's position
- page 114: "interruptible" misspelled as "interruptable"
- page 114: some text appears to be missing after 6.3.2
- page 119: memory map lists $300 twice
- page 125: "Temporary" misspelled as "Temporory"
- page 131: address of RSHIMEM is BEF8 and should be BEFB
- page 135: "inspecting" misspelled as "inpecting"
- page 147: "directory" misspelled as "drectory"
- page 183: "calendar" misspelled as "calender" three times
- page 184: both "endtry_length" and "entry_length" with different page numbers
- Quick Reference Card: tilde (~) missing from ASCII table