striepe@muscat.UUCP (06/12/86)
>Has anyone been able to use any of the disk enhancements being sold for Atari >1050 disk drives to read/write 40-track double-density format with nine >512-byte sectors per track (MS-DOS/PC-DOS format)? I understand that at least >some of the units allow the drive controller to be reprogrammed in ROM, and one >would think that this could then be accomplished, even if you had to modify >the SIO (easy enough with an XL; just "bank-switch" the high memory to RAM, >copy the OS up there, and carve away!) I currently own the ICD Doubler (256K sectors as well as standard 1050 formats, custom sector sequences and high speed serial IO) equipped drives as well as an ATR8000 with double-sided, double-density 40 track drives. In the past, I have also owned PERCOMS. None of these have the ability to handle 512byte sectors as supplied. The Doubler probably does not have enough RAM to handle the buffering. Mods like the Happy might be able to handle it, if they are programmable, and if the programmer interface is published. PERCOM, ASTRA, ICD, and ATR8000 all follow the "PERCOM" drive configuration table format, but simply ignore unsupported (e.g. 512 byte sector) configuration requests. The ATR8000 is programmable via a "Z" serial IO device. If you purchase the ROM sources, it is reasonably straight forward to download and execute routines beyond those supplied in ROM (and you have plenty of RAM to do that in, if you have the 64K version). A while back I implemented a simple copy utility that copies single and double-sided double density diskettes from drive to drive inside the ATR8000 avoiding the slow serial BUS completely. The Z device allows you to point to a particular memory location in the Z80 ram, and download to as well as upload from the ATR8000. You can also execute at the location of your pointer. This is how serial handlers are implemented. Unfortunately, the ATR8000 bit bangs instead of using a UART, so it is impossible to bump up the serial IO rate. The new ATR8500 should be better in this respect. Of course, you should have CP/M on the ATR8000 to make any decent Z80 projects possible (hand assembly gets old fast!). If anybody has a Z80 cross assembler for the Atari, I would love to know about that. Once you have figured out, how to make your drive read 512byte blocks, you still have to write programs to interpret the MS-DOS file format (FATS etc.), and don't forget that Atari sectors are stored in inverted format... If anybody has done work along these lines (ATR8000 or ICD etc.) I would be interested in hearing about it. It is no problem to bypass the ROM SIO routines and write your own. If you are running at the standard SIO rate (19200 BITS/sec), you can use the vectored handler. This makes communication of arbitrary frame length to abritrary SIO devices easy (you don't have to write your own interrupt routines). Note that there were serious bugs in the REV A ROMS on the 800. Also note that SpartaDOS vectors SIO routines to (pseudo)drives to accomodate their enhanced IO rates. Also remember that he SIO device designation is separate from CIO. Harald Striepe DEC Corporate Software Products Group, Santa Clara, CA decwrl!muscat!striepe, decwrl!dec-rhea!dec-winery!striepe, WINERY::STRIEPE -- Harald Striepe DEC Corporate Software Products Group, Santa Clara, CA decwrl!muscat!striepe, decwrl!dec-rhea!dec-winery!striepe, WINERY::STRIEPE
DYOUNG@USC-ISID.ARPA (C. David Young) (06/13/86)
Harald, Is there any way to get the disk copy program that you wrote for your ATR8000 to copy directly via ATR memory, bypassing the serial buss? I am sure a number of us would enjoy having that program. David Young -------
striepe@muscat.UUCP (06/17/86)
I have had some requests for my ATR8000 disk copy utility. It is a slightly embarassing 'midnite hack' that might be ATR ROM specific. It also does not support single density. It was written in ACTION! and M80 assembler. This makes it difficult for most people to create the program from sources (the M80 assembler was run on a DEC Rainbow, and the linked file transferred to the Atari via KERMIT). If there is enough interest, I will post it to the net. However, it would have to be posted in binary form. Does anybody have a BINHEX type of utility to do just that. Another way (I guess) would be to have a BASIC PUTter program to create the file with complete lack of error checking. -- Harald Striepe DEC Corporate Software Products Group, Santa Clara, CA decwrl!muscat!striepe, decwrl!dec-rhea!dec-winery!striepe, WINERY::STRIEPE