Function |
|
---|
1 | Write bytes using new pointer
|
2 | Write bytes ignoring new pointer
|
3 | Read bytes using new pointer
|
4 | Read bytes ignoring new pointer
|
5 | Get media title of CSD disk and boot option
|
6 | Get currently selected directory name
|
7 | Get current library name.
|
8 | Read filenames from current directory
|
9 | Reads work/login filename, command line tail or entries from specified directory
|
10 | Read entries and information from specified directory
|
11 | Read entries and extended information from specified directory
|
Functions
|
1 | Write bytes using new pointer
|
2 | Write bytes ignoring new pointer
|
3 | Read bytes using new pointer
|
4 | Read bytes ignoring new pointer
|
| With functions &01 and &03 the PTR
is first set to the supplied value before transfering data.
On exit the 'number of bytes' field holds the number of bytes not
transfered. The 'data address' field is updated to point to the next
location for data transfer.
The PTR for the file is updated by the number of bytes transfered and
placed in the 'PTR' field. The carry flag is returned set if EOF was met.
The EOF-error-flag is reset. An error occurs if the object is not a file or
does not have the correct access.
If the channel is 0, action is undefined. Some systems allow multiple
bytes to be written to OSWRCH or read from OSRDCH if the channel is 0.
|
5 | Get media title of CSD disk and boot option
into data block:
&00 | length of title (n)
| &01 | title in ASCII characters
| &01+n | startup option
| &02+n | drive number
| &03+n |
|
|
6 | Get currently selected directory name into
data block:
&00 | length of drive identity (n)
| &01 | ASCII drive identity (drive number)
| &01+n | length of directory name (m)
| &02+n | directory name in ASCII characters
| &02+n+m | ownership: &00 - owner, &FF - public
| &03+n+m |
|
|
7 | Get current library name into data block:
&00 | length of drive identity (n)
| &01 | ASCII drive identity (drive number)
| &01+n | length of library name (m)
| &02+n | library name in ASCII characters
| &02+n+m | ownership: &00 - owner, &FF - public
| &03+n+m |
|
|
8 | Read filenames from current directory into
data block:
&00 | length of filename 1 (n)
| &01 | filename 1 in ASCII characters
| &01+n | length of filename 2 (m)
| &02+n | filename 2 in ASCII characters
| &02+n+m | etc...
|
The first call to function &08 should be made with the directory pointer
set to zero. This will read the first filename, and the pointer will be
updated so that the next call will read the next filename. When no filenames
are left, the call returns with the 'number of filenames' left unchanged and
the carry flag set.
|
9 | Reads work/login filename, command line tail
or entries from specified directory.
If the channel is zero, the work/login filename or command tail is read into
the data block:
&00 | length of drive identity or command line tail (n)
| &01 | ASCII drive identity (drive number) or comand line tail
| &01+n | length of work/login filename (m)
| &02+n | work/login filename
| &02+n+m |
|
If the channel is the channel number of an open directory, reads a null-
terminated list of directory entries. The function is called as for OSGBPB
8, but 'number of filenames' returns the number of filenames actually read,
not the number unread.
|
10 | Reads entries and information from the
opened directory whose channel number is in XY+0. This function is called as
for OSGBPB 9. Each record is a whole multiple of four bytes long:
&00 | Load address
| &04 | Execution address
| &08 | Length
| &0C | Attributes
| &10 | Object type (1=file, 2=directory, 3=image file, 4=unresolved symbolic link)
| &14 | Object name, null terminated
| &xx | next record
|
|
11 | Reads entries and extended information from
the opened directory whose channel number is in XY+0. This function is
called as for OSGBPB 9. Each record is a whole multiple of four bytes long:
&00 | Load address
| &04 | Execution address
| &08 | Length
| &0C | Attributes
| &10 | Object type (1=file, 2=directory, 3=image file, 4=unresolved symbolic link)
| &14 | Sector start address (System Internal Name)
| &18 | Five zeros or centisecond time since 1900
| &1D | Object name, null terminated
| &xxx | next record
|
|
12 | Reads entries and information from the
opened directory whose channel number is in XY+0. This function is called as
for OSGBPB 9. Each record is a whole multiple of four bytes long:
&00 | Load address
| &04 | Execution address
| &08 | Length
| &0C | Attributes
| &10 | Object type (1=file, 2=directory, 3=image file, 4=unresolved symbolic link)
| &14 | Object filetype (b8-b19 of load address)
| &18 | Object name, null terminated
| &xx | next record
|
|