list of isdos functions
ZXNet echo conference «code.zx»
From Valerij Kozhevnikoff → To All 18 May 2004
Hello, All!
Ram disk == disk cache.
_······------====== Monitor glass cutter ======------······_
0(00):create - Initialize the hard disk with a specified size. A - size in blocks
1(01):clear - Clears the electronic disk from blocks of the current device.
2(02):flush - Forced saving of modified blocks of the current device
3(03):modwr - Write a modified block to an electronic disk DE - block number, HL -
4(04):unird - Reading a block from an electronic disk, if it is not there, then from the device. DE - but
5(05):mltrd - Reading several blocks in a row from an electronic disk. B - quantity
6(06):quard - Returns the block address of the current device, previously loaded
7(07):ttyin - Enter a character. Output: A - code of the key pressed, flag C - expand
8(08):kwait - Waiting for the keyboard state with unpressed keys.
9(09):ktest - Test for pressing a key. Output: Z: not pressed, NZ
10(0A):ttyout - Displays the character in register A and transfers printing to the next one
11(0B):prcpl - Sets the print mode. A=0: direct mode, otherwise inverse.
12(0C):prapd - Setting the position for TTYOUT H = Y coordinate (top), L = coo
13(0D):dread - Reading from the device bypassing the electronic disk. B - number of blocks, DE -
14(0E):write - Write to the device bypassing the electronic disk. B, DE, HL - analogue
15(0F):binit - Transition to the block device driver initialization procedure16(10):g_cnfg - Return the kernel configuration vector. HL'- address of the config vector
17(11):g_kedv - Return the vector of the character input device. HL' - vector address
18(12):g_tydv - Return the vector of the character output device. HL' - vector address
19(13):g_bldv - Return the block device vector HL' - address of the block device vector
20(14):g_drv - Return the address of the driver body in HL' by the device number in A (from
21(15):empty - Not used
22(16):stchn - Checking the channel status. A - channel number. Output: flag C: A=k
23(17):delchn - Deleting a channel. A = channel number.
24(18):crchn - Channel creation. A = channel number, DE = length.
25(19):newchn - Creating a user channel. Input: DE = length. Output: A - number
26(1A):swkey - Switch character input device. B = opi channel number
27(1B):swtyp - Switching the character output device. B = op channel number
28(1C):swblk - Switching block devices. B = channel number of block device
29(1D):ldnew - Connecting a new device of any type. A = mouth channel number
30(1E):l_im2 - Adding a procedure to the chain (A<>0)/removing it from the chain (A=0)
31(1F):erdrv - Called by drivers in case of an error. Transfers control over a
32(20):open - Opens the device and the main directory. Output: with return.
33(21):open1 - Open the directory by the number of the starting block of the directory in DE.
34(22):empty - Not used35(23):crfil - Create a file by name. HL = address of the completed descriptor. (Im
36(24):erfil - Deleting a file by name. HL - descriptor address (name, type), absent
37(25):fopen - Search and open a file or directory by name and type. HL - address
38(26):opnum - Open a file by number in the current directory. File number - in p
39(27):gname - Returns the file descriptor without opening it at the input to reg.E
40(28):putf - Closes a file (saves a handle to the current file in the directory).
41(29):rpart - Read part of a file. A,HL - pointer, IX - memory address, DE -
42(2A):wpart - Write part of a file. A,HL - pointer, IX - memory address, DE -
43(2B):rifle - Read a file in blocks. B - number of blocks, DE - block number
44(2C):wifle - Write a file in blocks. B - number of blocks, DE - block number
45(2D):qrvbl - Return the address of a virtual block on the electronic disk. Input: D
46(2E):modo - Modification (quasi-write) of a block read in an electronic disk process
47(2F):fadd - Adding blocks to a file. A - number of blocks, DE - pointer in b
48(30):fcut - Removing blocks from a file. A - number of blocks, DE - pointer in blocks
49(31):eadd - Adding DE bytes to the end of the file.
50(32):ecut - Remove DE bytes from the end of the file.
51(33):g_cat - Return the number of the 0th block of the current directory in HL' and the device number
52(34):find - Search and open a file or directory by name and type as a file.53(35):bkfcb - Return the file descriptor address in HL'(=FNAME) (see APPENDIX 9)
54(36):p_stat - Saves the current state of the system in channel number A(A<>0). A=0
55(37):g_stat - Restoring the environment from the channel numbered in register A(A=0,A<>0:
56(38):distr - Capture blocks on the device .A = size of the required continuous o
57(39):retrn - Reconfiguring a resident program or driver. BA = length,HL
58(3A):empty - Not used
59(3B):crf__ - Creating a file by name in HL without checking for existence (with o
60(3C):erf__ - Deleting an open file (with reverse error)
61(3D):rvblk - Reading block number DE (virtual, i.e. open from the beginning of the current
62(3E):wvblk - Write virtual block number DE from the buffer at address HL.
63(3F):free - Unpin A blocks starting from DE-g on the current block device
64(40):oparm - Opens a parameter file. Path to the file (full or from current
65(41):fmrst - Restores the original state of the environment. (device, ka
66(42):comstr - Parses the specified path and opens the given device and to
67(43):opcat - Similar to the comstr(#42) procedure, but works with an internal buffer
68(44):exebat - Run a file according to the path and file name located in the internal
69(45):g_com - Returns the address of the internal command line buffer in HL'. V o
70(46):trans - Converts file name and type separated by a dot (or mask)71(47):g_way - Forms a pu in a given channel or buffer in symbolic form
72(48):run - = p_com(#49) + exebat(#44). (See exebat for output). Regs are transmitted
73(49):p_com - Fill the internal command line buffer. HL = line address
74(4A):dvtrn - Converts a logical device name to a physical one. Entry and exit
75(4B):newcom - Similar to comstr(#42), but for a new disk.
76(4C):newcat - Similar to opcat(#40), but for a new disk.
77(4D):rcdel - Deleting recursively created channels. In reg.A - channel number
78(4E):cp_ir - Searches the table at address DE for a word that matches the beginning of the last
79(4F):convr - Converts an 11-byte file name and extension specifier (to
80(50):fncor - Checks if the file or directory name is correct. A: If 5s
81(51):fndev - By name in HL (8 letters) searches for an installed driver or resident
82(52):opres - Analogue of opcat for .res, .key, .typ, .lpr, .blk (spaces instead of t
83(53):exeres - Launch a resident task using the channel number in A. (To run
84(54):swrun - Launch a .com file, saving the current file. environment (IX-beginning, DE-length
96(60):empty - not used
97(61):wt - Window output. Subfunction in reg. A: A=0 single frame window, A
98(62):box - Drawing/erasing a window frame. Input: IX = vector address, DE - o
99(63):awt - Colorizes the line inside the window, with a frame. Login: IX = century address100(64):awtc - Colorizes a line inside the window without affecting the frame, IX=vector
101(65):lwt - Printing a specified number of lines in a window;
102(66):adrwt - Print text in the window. IX is the vector of the window after which lies those
103(67):lenwt - Similar to adrwt, but in HL - the address of the window text;
104(68):prstr - Print a string in a window with several subfunctions. Subfunction code
105(69):empty - not used
106(6A):panel - Working with the panel. Subfunction code in register A (see APPENDIX 1
107(6B):wtpos - Initializes the xypos system variable, calculating its value
108(6C):str - Print the line ending with "13" at the current position. HL - address
109(6D):lnstr - Print a line. HL is the address, B is the number of characters. Contacts
110(6E):smbgt - Line mobile editor. It prints the contents of the buffer itself. B
111(6F):empty - not used
112(70):scroll - reg. A=0: setting the scrolling procedure to the window vector. A=1:
113(71):tylin - Print a string by vector for edstr from XS (cursor position)
114(72):g_scr - Return in the HL' register the address of the screen vector and beep (see.
115(73):cls - A=0: Clearing the screen using the PAPER and BORD variables (see APP.
116(74):empty - not used
117(75):empty - not used
118(76):y___ - Turn on the blinking cursor.
119(77):n___ - Turn off the blinking cursor.
120(78):empty - not used
121(79):empty - not used
122(7A):empty - not used123(7B):empty - not used
124(7C):d_a - Convert an integer to an ASCII string. Login: HL - address you
125(7D):a_d - converts a string of ASCII characters into a 4-byte number. Presenters
126(7E):analys - Transfer of control to a subroutine at the address from the table. HL - hell
127(7F):edstr - Editing a line in the text. Works with all printed codes
128(80):shel0 - Main exit to the shell: creating virtual. disk. (Size: g_cnf
129(81):shel1 - Exit with clearing the screen, initializing ERDEV, QUEST (see AT
130(82):shel2 - Output with redrawing and tinting the top tooltip line
131(83):pnview - Waits for the keys to be released and returns to the reg. A cshel2 code,
132(84):shout - Exits to the shell and executes the internal shell command (but
133(85):p^csr - Sets the file status mask in the panel for marking and
134(86):^_csr - By file number in the directory (in reg. E) returns: A=(HL')= bye
135(87):g_mpan - Request about the state of the current panel Output: A - number of marked
136(88):ed_dig - Editing a decimal number in the window (for menu, for example). A-
137(89):mmenu - Redrawing the top line of shell tooltips with touch-up or
138(8A):g_curs - Returns panel cursor parameters. Output: A=E'= FA number
139(8B):mwait - Writes "Please Wait" at the cursor location
140(8C):g_dev - Switching devices. Entering a character from the keyboard with flashing142(8E):shsubr - Execute commands from application tasks. A is the command code. (APPENDIX
143(8F):cpfil - Compare an 11-byte pattern (DE), (for example, the result of RST t
144(90):shpanl - Executing commands for working with panels: Reg. B - register status
145(91):menu - Menu. Reseals the window. After the standard wt-window you need
146(92):funct - Execute utility functions from a text file. HL=file path, A=
147(93):shexe - Exit to the shell and run RST exebat(#44) with A=0. (see ANNEX
_······------====== Monitor glass cutter ======------······_
WBR, Jason.
_/(ZX)/_ /*e-mail: jason2000(scary dog)yandex.ru ICQ: 62235830*/
/np:/ *silence*