...
Code Block | ||||
---|---|---|---|---|
| ||||
IN:
B = record type
C = buffer length
DE = user buffer address (to store information of read, always local, in S0 or S1)
IX = DOR handle
OUT, if call successful:
Fc = 0
original IX DOR handle is still valid
C = actual length of information
OUT, if call failed:
Fc = 1
original IX is still valid
A = error code
RC_HAND ($08), bad DOR handle
RC_BAD ($04), bad argument
RC_FAIL ($16), information is not present
Registers changed after return:
..B.DEHL/IXIY same
AF.C..../.... different |
...
Code Block | ||
---|---|---|
| ||
IN: B = record type C = buffer length DE = user buffer address (to store information to be written, always local, in S0 or S1) IX = DOR handle OUT, if call successful: Fc = 0 original IX DOR handle is still valid C = length of information written OUT, if call failed: Fc = 1 original IX is still valid A = error code RC_HAND ($08), bad DOR handle RC_BAD ($04), bad argument RC_FAIL ($16), information is not present Registers changed after return: ..B.DEHL/IXIY same AF..C..../.... different |
Code Block | ||
---|---|---|
| ||
IN: C = number of segment to parse (0 for all, default) DE = filename buffer (always local, in S0 or S1) OUT, if call successful: Fc = 0 IX = handle (device type, always) A = DOR type (device, file, directory, EPROM) B = segment count in explicit filename HL = last character parsed in filename (separator or null terminator) OUT, if call failed: Fc = 1 A = RC_Fail, buffer not in S0 or S1 A = RC_Onf, filename does not exist Registers changed after return: ...CDE.. / ..IY same AFB...HL / IX.. different |
...