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*