PCSWP Eugene Nolan 2/10/89 c/o DHN* RCPM 215-623-4040 This utility allows you access to IBM PC 320/360k floppies if: 1 - Your systems has a means of accessing DS/DD 5.25 with 512 byte sectors and 8 or 9 physical sectors/track. This means that your system must support 4k or 4.5k bytes per track on your floppy. It must also alternate heads when it overflows the current track. It: 1 - Allows you to spec the drive the DOS disk is on 2 - Get a directory listing of the DOS disk 3 - Copy a single file at a time to the DOS disk (no wildcards) from a specified CPM drive/user 4 - Sweep the DOS disk A - Foreward or backwards B - View a file ( if file is not ASCII, sorry ) C - Delete a DOS file D - Tag a DOS file for later mass copy E - Untag a previously tagged file F - Copy all tagged files to a designated CPM drive/user 5 - During file copies from/to the DOS disk, you will be asked whether to proceed on not if the destination file exists Limitations: 1 - Only 320k and 360k format supported. 2 - File names with 05 in dos directory as first character of name may display funny, as no conversion to the true E5h will be made. 3 - For file copys from/to the DOS disk, no data verification is done 4 - No autologin of DOS disk, if you change the disk, tell the program by re-specifying the drive the DOS disk is on 5 - Checks are made to verify the DOS disk is a DOS disk of the supported formats, but given the right circumstances, it is possible to trick the program (possible but unlikely). Many commercial systems have a utility that will allow you to define this format. For those of you who wish to roll your own DPB, the values are: DPBF: ;DISK PARAMETER BLOCK for IBM 360k DW 36 ;SECTORS PER TRACK ( 32 if 320k disk) DB 3 ;BLOCK SHIFT FACTOR DB 7 ;BLOCK MASK DB 0 ;EXTENT MASK DW 359 ;DISK SIZE-1 (319 if 320k disk) DW 63 ;DIRECTORY MAX (Not applicable) DB 128+64 ;ALLOC 0 ditto DB 0 ;ALLOC 1 ditto DW 8 ;CKS ditto DW 0 ;TRACK OFFSET ditto General Notes: This program is written in Small C 2.11. In doing so it makes use of some of Small C's internal data bases (namely _fcbptr) and it's method of allocating storage for global variables. In doing so, it will probably not compile correctly with ANY commercial compiler. Also note again, if you change the 'DOS' disk, TELL THE PROGRAM by using the SELECT DOS DISK function from the main menu. And please do not get in the habit of Control-C'ing out of it, Small C lets you do it, but there may be side effects, use the exit from the main menu. ( Only applies if you have been able to succesfully select a DOS disk). The program in it's current version is somewhat slow in it's write's to the DOS floppy. This is because, for the time being, the BIOS calls to 'write sector' are initiated with a 'write to directory' code, which flushes each 128 byte CPM sector individually, regardless of any allocation management code in the BIOS.