ххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххххџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџьЅСq ПГbjbjt+t+ %&AAЇ џџџџџџ]fffffffzzzz8В Оz юююхчччччч$єм f lffюlll:ffхzzffffхlдl@rƒTffхк ЬрKНOПzz>.зCBIOS for Cromemco 4FDC/16FDC or CCS 2422 disk controller FDCBIOS.Z80 and FDCBOOT.Z80 are modifications of 4FDCBIOS.Z80 and 4FDCBOOT.Z80 respectively from the CPMUG User Group Library. They have been modified to correct problems in the original version with respect to use of the Persci single arm voice coil disk drives. The names were also changed to indicate that the programs have been additionally checked out with the 16FDC. The major changes to the original code were as follows: corrected PIP A:=B:filename.ext the original code improperly accessed the Persci 277/299 single arm voice coil drives corrected current drive assignment on a warm boot the original code always reference drive A: after a warm boot FDCBIOS.Z80 and FDCBOOT.Z80 are the bootstrap and CBIOS for running CP/M 2.x with a Cromemco 4FDC/16FDC controller board, a Z80 CPU, and minimum 20K of RAM. CP/M 1.4 can also be supported if some of the 2.x-only code is removed. This code is also applicable to, and tested upon, the California Computer Systems disk controller board model 2422, if a serial port at 0 compatible with CDOS is used (a 3P + S, or a Cromemco TUART, or the serial port on a Cromemco Single Card Computer.) This source is capable of supporting three types of disks: 5 inch (such as Wangco), 8 inch (such as Shugart), and single-arm voice-coil 8 inch (such as Persci). Between one and four drives are supportable, but no intermixing. There is no current support for double-sided drives, but it should be easy to add. There is no support for the double density mode in the Cromemco 16FDC, or the CCS 2422. This BIOS is limited to 128 byte sectors. The 8 inch format is compatible with all CP/M and CDOS versions currently known. The 5 inch format (skew of 5) is compatible with all 5 inch CDOS formats currently used. It is assumed that the main console, at port zero, is already initialized by RDOS or some other program. If not, you can insert the necessary code into FDCBOOT.Z80. As additional features, the routine contains an optional reader-punch and printer support routine, via TUART and PRI boards. Also, in a commented section is a small modification so the DEL key (07FH) is changed to a Control-U by the CBIOS, for those who have Backspace on the terminal. I do not like to use two hands just to be able to erase a mistake. The source is for Cromemco Z80 assembler, and there are five constants in the front to be changed to select various options. First, select the type of drive: If 5 inch, LARGESW and PERSCISW should be 0. If 8 inch Shugart, LARGESW should be 1, PERSCISW 0. If Persci, PERSCISW should be 1. LARGESW should also be altered in FDCBOOT.Z80. Next, NUMDRIVES should be 1 to 4 for 5" and 8" drives, and 2 or 4 for Persci double-disk drives. Then, to have support for printer and TUART, BIGIOSW should be 1, otherwise 0. You might also wish to change BAUDRATE to the desired value for the reader-punch (110 baud is supplied). Note: if the CCS 2422 is used, it may be necessary to supply an initialization and bootstrap routine for the console port, if that is on a TUART addressed at zero. The current code does not initialize the port at zero, assuming that has been done before the disk was booted. The code for the TUART referred to here is for an additional TUART port, not the console port, but it is easy to add the necessary code to initialize the console port also. Finally, set BEGINADR to the start of the CBIOS. It is supplied as 0E400, which is for a 64K system. This should also be altered in FDCBOOT.Z80. The switches on the 4FDC/16FDC are set exactly as described in the board manual. For a system over 48K, the ROM must be disabled upon bootstrapping. For a smaller system, the RDOS can stay in, or not, as you desire. For a CCS 2422 controller, the same statement applies, except the 2422 ROM need not be disabled unless the system memory exceeds 60K. FDCBOOT.HEX and FDCBIOS.HEX are supplied, assembled from the source files. They are set for a 64K version of CP/M. You can use them in another system if you can put about 8K at the upper end of memory (E000) and maybe 16K at the low end (0000) to be able to re-assemble the files. The following instructions should assist in the initial start-up for a 64K CP/M system: modify FDCBIOS.Z80 where appropriate create a copy of CPM64.COM from MOVCPM 3) reboot with CDOS generated at 48K ASMB FDCBIOS HEX=F200; do not continue past this point if there are errors DEBUG CPM64.COM F FDCBIOS.HEX R 4000 M 3200 34xx 1F80 M 980 2500 DC00 G F200 SYSGEN subsequent updates modify FDCBIOS.Z80 where appropriate reboot CDOS ASMB FDCBIOS HEX=F200 reboot CP/M MOVCPM 64 * SAVE 36 CPM64.COM DDT CPM64.COM IFDCBIOS.HEX R4000 M3200 34xx 1F80; pls note the value 34xx will vary IFDCBOOT.HEX R4000 M4000 404F 900; Control ^C SAVE 36 CP/M64.COM DDT CP/M64.COM control ^C SYSGEN for other memory size systems ED FDCBIOS.Z80 modify MEMSIZE ED FDCBOOT.Z80 modify MEMSIZE reboot CDOS ASMB FDCBIOS HEX=(top of memory-E00) ASMB FDCBOOT HEX=0 PAGE3 аЇЈЌ­ЎЏАВГѕцѕцмцѕѕCJOJQJhmHjCJOJQJUhnH CJOJQJhnH  :ъ`аЖq  Є yкVщJeНт .y‰—žЏПЦћљээшшшшшшшшшшшкккккккккк & F1$„№„Р§ ЦА1$Є№  & F„а ЦhаЄ№:ъ`аЖq  Є yкVщJeНт .y‰—žЏПЦЭр'3?Q_lrЅВИ§ћіяьцркдЮШТМЖА­ЇЁ›•‰ƒ}wqk                                                                'ЦЭр'3?Q_lrЅВИдчі '6яъммммммммммммммммЬъС & F1$„№„Р§ & F1$„№„Р§Є№ ЦА & F1$„№„Р§ ЦА1$Є№ & F1$„№„Р§Є№ ЦАИдчі '6ETco”ЇAб г ЇБДџџBarry A. Watzman(C:\TEMP\AutoRecovery save of FDCBIOS.asdBarry A. WatzmanE:\CPM\FDCBIOS\FDCBIOS2.DOCГ'f 0`lџьW{0`lџџџџџџџџџvXЎ џЙK=0`lџ„А„PўЦАo()„А„PўЦАo()„h„˜ўЦh.„А„PўЦАo()vXЎьW{Г'f ЙK=џџџџџџџџџџџџџџџџџџџ@€::"::Г@GTimes New Roman5€Symbol3& Arial71Courier"A‰аhев<ев<зAб г ЇБДџџBarry A. Watzman(C:\TEMP\AutoRecovery save of FDCBIOS.asdBarry A. WatzmanE:\CPM\FDCBIOS\FDCBIOS2.DOCГ'f 0`lџьW{0`lџџџџџџџџџvXЎ џЙK=0`lџ„А„PўЦАo()„А„PўЦАo()„h„˜ўЦh.„А„PўЦАo()vXЎьW{Г'f ЙK=џџџџџџџџџџџџџџџџџџџ@€::"::Г@GTimes New Roman5€Symbol3& Arial71Courier"A‰аhев<ев<зAб г ЇБДџџBarry A. Watzman(C:\TEMP\AutoRecovery save of FDCBIOS.asdBarry A. WatzmanE:\CPM\FDCBIOS\FDCBIOS2.DOCГ'f 0`lџьW{0`lџџџџџџџџџvXЎ џЙK=0`lџ„А„PўЦАo()„А„PўЦАo()„h„˜ўЦh.„А„PўЦАo()vXЎьW{Г'f ЙK=џџџџџџџџџџџџџџџџџџџ@€::"::Г@GTimes New Roman5€Symbol3& Arial71Courier"A‰аhев<ев<з4"д2dцџџ9CBIOS for Cromemco 4FDC/16FDC or CCS 2422 disk controllerBarry A. WatzmanBarry A. Watzmanџџџџџџџџ РF`:ПKНOП@mшKНOП0€1TableџџџџџџџџџџџџWordDocumentџџџџџџџџ%&SummaryInformation(џџџџDocumentSummaryInformation8џџџџџџџџџџџџ$CompObjџџџџjObjectPoolџџџџџџџџџџџџ@mшKНOП@mшKНOПџџџџџџџџџџџџРюA:№ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ РF`:ПKНOП@mшKНOП0€1TableџџџџџџџџџџџџWordDocumentџџџџџџџџ%&SummaryInformation(џџџџDocumentSummaryInformation8џџџџџџџџџџџџ$CompObjџџџџjObjectPoolџџџџџџџџџџџџ@mшKНOП@mшKНOПџџџџџџџџџџџџРюA:№ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ РF`:ПKНOП@mшKНOП0€1TableџџџџџџџџџџџџWordDocumentџџџџџџџџ%&SummaryInformation(џџџџDocumentSummaryInformation8џџџџџџџџџџџџ$CompObjџџџџjObjectPoolџџџџџџџџџџџџ@mшKНOП@mшKНOПџџџџџџџџџџџџРюA:№ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџўџ џџџџ РFMicrosoft Word Document MSWordDocWord.Document.8є9Вq