...
Code Block |
---|
|
IN:
A = FN_AH ($01), allocate handlereason code
Other register parameters depend on reason code
BOUT:
= handle type Depends on reason code, see below.
|
Notes
Internal operating system usage. This call is used to allocate all I/O type handles. The handle type and structure is documented in handle.def file.
Code Block |
---|
title | FN_AH (A = $01), Allocate handle |
---|
|
IN: A B = 0, does not allocate aFN_AH ($01)
B = handle properlytype
- the next handle is B = 0, returns the first free handle, does not givenallocate theit SAME numberproperly
OUT, if successful:
Fc = 0
, IX = handle
OUT, if failed:
Fc = 1
, A = RC_ROOM
Registers changed after return:
..BCDEHL/..IY same
AF....../IX.. different
IN:
|
Code Block |
---|
title | FN_VH (A = $02), Verify handle |
---|
|
IN: A = FN_VH ($02),
verify handle
B = handle type
IX = handle
OUT, if successful:
Fc = 0
OUT, if failed
Fc = 1
, A = RC_ROOM
Registers changed after return:
..BCDEHL/IXIY same
AF....../.... different
|
Code Block |
---|
title | FN_FH (A = $03), Free handle |
---|
|
IN:
A = FN_FH ($03),
free handle B = handle type
IX = handle
OUT, if successful:
Fc = 0, IX = 0
OUT, if failed:
Fc = 1
, A = RC_HAND
Registers changed after return:
..BCDEHL/..IY same
AF....../IX.. different
IN:
A = |
Code Block |
---|
| | get | find | | | | | |
IN: A = FN_GH ($04)
IX = first handle to test, 0 to begin with firsttop handle
B = handle type, 0 for any type
C = dyn id, 0 tofor any bypassdyn theid
check
OUT, if successful:
Fc = 0, IX = handle
OUT, if failed:
Fc = 1
, A = RC_EOF
Registers changed after return:
..BCDEHL/..IY same
AF....../IX.. different
IN:
A = FN_NH ($05), get next handle of same type (OZ 4.6 and newer)
IX = handle to test
OUT, if successful:
Fc = 0
IX = handle
OUT, if failed:
Fc = 1
A = RC_EOF
Registers changed after return:
..BCDEHL/..IY
same
AF....../IX..
different |
...
Code Block |
---|
title | FN_AH CH (A = $01$05), Allocate handle |
---|
|
IN: A = FN_AH ($01)
B = handle type
B = 0, does not allocate a handle properly - the next handle is given the SAME number
OUT, if successful:
Fc = 0, IX = handle
OUT, if failed:
Fc = 1, A = RC_ROOM
Registers changed after return:
..BCDEHL/..IY same
AF....../IX.. different
|
Code Block |
---|
title | FN_VH (A = $02), Verify handleChange handle type (0Z 5.0 and newer) |
---|
|
IN: A = FN_VHCH ($02$05)
B = handleold type
IX = handle
OUT, if successful:
Fc = 0
OUT, if failed
Fc = 1, A = RC_ROOM
Registers changed after return:
..BCDEHL/IXIY same
AF....../.... different
|
Code Block |
---|
title | FN_FH (A = $03), Free handle |
---|
|
IN: A = FN_FH ($03)
B = handleC = new type
IX = handle
OUT, if successful:
Fc = 0, IX = 0same handle
OUT, if failed:
Fc = 1, A = RC_HAND
Registers changed after return:
..BCDEHL/..IY same
AF....../IX.. different |
Code Block |
---|
title | FN_AH (A = $01), Allocate handle |
---|
|
IN: B = handle type
B = 0, does not allocate a handle properly - the next handle is given the SAME number
OUT, if successful:
Fc = 0, IX = handle
OUT, if failed:
Fc = 1, A = RC_ROOM
Hand (old type wrong)
Registers changed after return:
.A.BCDEHL/..IYIXIY same
AF.F....../IX.... different
|
...