|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.webcodepro.applecommander.storage.Disk
com.webcodepro.applecommander.storage.FormattedDisk
com.webcodepro.applecommander.storage.os.rdos.RdosFormatDisk
public class RdosFormatDisk
Manages a disk that is in the RDOS format.
Note that the RDOS block interleave is different than the standard DOS 3.3 format. Thus, when the image is made, the sectors are skewed differently - use readRdosBlock to read the appropriate block number.
Also note that the operating system is itself the first file. Block #0 is really track 0, sector 0 - meaning that the first file should not (cannot) be deleted.
RDOS appears to have been placed on 13 sector disks. This limits the number of blocks to 455. It also may also cause incompatibilities with other formats and other cracks.
Date created: Oct 7, 2002 2:03:58 PM
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class com.webcodepro.applecommander.storage.FormattedDisk |
|---|
FormattedDisk.DiskInformation, FormattedDisk.DiskUsage, FormattedDisk.FileColumnHeader |
| Nested classes/interfaces inherited from class com.webcodepro.applecommander.storage.Disk |
|---|
Disk.FilenameFilter |
| Field Summary | |
|---|---|
static int |
BLOCKS_ON_DISK
Specifies the number of blocks on the disk. |
static int |
ENTRY_LENGTH
Specifies the length of a file entry. |
static java.lang.String[] |
filetypes
The known filetypes for a RDOS disk. |
| Fields inherited from class com.webcodepro.applecommander.storage.FormattedDisk |
|---|
FILE_DISPLAY_DETAIL, FILE_DISPLAY_NATIVE, FILE_DISPLAY_STANDARD |
| Fields inherited from class com.webcodepro.applecommander.storage.Disk |
|---|
APPLE_10MB_HARDDISK, APPLE_140KB_DISK, APPLE_140KB_NIBBLE_DISK, APPLE_20MB_HARDDISK, APPLE_32MB_HARDDISK, APPLE_5MB_HARDDISK, APPLE_800KB_2IMG_DISK, APPLE_800KB_DISK, BLOCK_SIZE, DOS33_SECTORS_ON_140KB_DISK, PRODOS_BLOCKS_ON_140KB_DISK, SECTOR_SIZE |
| Constructor Summary | |
|---|---|
RdosFormatDisk(java.lang.String filename,
ImageOrder imageOrder)
Constructor for RdosFormatDisk. |
|
| Method Summary | |
|---|---|
boolean |
canCreateDirectories()
Identify if additional directories can be created. |
boolean |
canCreateFile()
Indicates if this disk image can create a file. |
boolean |
canDeleteFile()
Indicates if this disk image can delete a file. |
boolean |
canHaveDirectories()
RDOS dos not support directories. |
boolean |
canReadFileData()
Indicates if this disk image can read data from a file. |
boolean |
canWriteFileData()
Indicates if this disk image can write data to a file. |
void |
changeImageOrder(ImageOrder imageOrder)
Change to a different ImageOrder. |
static RdosFormatDisk[] |
create(java.lang.String filename,
ImageOrder imageOrder)
Create a RdosFormatDisk. |
DirectoryEntry |
createDirectory()
Create a new DirectoryEntry. |
FileEntry |
createFile()
Create a new FileEntry. |
void |
format()
Format the disk as an RDOS disk. |
int[] |
getBitmapDimensions()
Get suggested dimensions for display of bitmap. |
java.lang.String[] |
getBitmapLabels()
Get the labels to use in the bitmap. |
int |
getBitmapLength()
Get the length of the bitmap. |
java.util.List |
getDiskInformation()
Get Pascal-specific disk information. |
java.lang.String |
getDiskName()
RDOS really does not have a disk name. |
FormattedDisk.DiskUsage |
getDiskUsage()
Get the disk usage iterator. |
java.util.List |
getFileColumnHeaders(int displayMode)
Get the standard file column header information. |
byte[] |
getFileData(FileEntry fileEntry)
Get the data associated with the specified FileEntry. |
java.util.List |
getFiles()
Retrieve a list of files. |
java.lang.String[] |
getFiletypes()
Returns a list of possible file types. |
java.lang.String |
getFormat()
Identify the operating system format of this disk. |
int |
getFreeBlocks()
Return the number of free blocks. |
int |
getFreeSpace()
Return the amount of free space in bytes. |
int |
getLogicalDiskNumber()
Returns the logical disk number. |
java.lang.String |
getSuggestedFilename(java.lang.String filename)
Returns a valid filename for the given filename. |
java.lang.String |
getSuggestedFiletype(java.lang.String filename)
Returns a valid filetype for the given filename. |
int |
getUsedBlocks()
Return the number of used blocks. |
int |
getUsedSpace()
Return the amount of used space in bytes. |
boolean |
needsAddress(java.lang.String filetype)
Indicates if this filetype requires an address component. |
byte[] |
readRdosBlock(int block)
Read an RDOS block. |
void |
setFileData(FileEntry fileEntry,
byte[] fileData)
Writes the raw bytes into the file. |
boolean |
supportsDeletedFiles()
Indicates if this disk format supports "deleted" files. |
boolean |
supportsDiskMap()
Indicates if this FormattedDisk supports a disk map. |
void |
writeRdosBlock(int block,
byte[] data)
Write an RDOS block. |
| Methods inherited from class com.webcodepro.applecommander.storage.FormattedDisk |
|---|
getFile, getFile, getFormattedDisk, resizeDiskImage, writeBootCode |
| Methods inherited from class com.webcodepro.applecommander.storage.Disk |
|---|
getDiskImageManager, getFilename, getFilenameFilters, getFormattedDisks, getImageOrder, getPhysicalSize, hasChanged, is140KbDisk, is2ImgOrder, is800KbDisk, isCompressed, isCpmFormat, isDosFormat, isDosOrder, isNewImage, isNibbleOrder, isOzDosFormat, isPascalFormat, isProdosFormat, isProdosOrder, isRdosFormat, isUniDosFormat, readBlock, readSector, resizeDiskImage, save, saveAs, setFilename, setImageOrder, writeBlock, writeSector |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final int ENTRY_LENGTH
public static final int BLOCKS_ON_DISK
public static final java.lang.String[] filetypes
| Constructor Detail |
|---|
public RdosFormatDisk(java.lang.String filename,
ImageOrder imageOrder)
| Method Detail |
|---|
public static RdosFormatDisk[] create(java.lang.String filename,
ImageOrder imageOrder)
public byte[] readRdosBlock(int block)
Note that sectorSkew has the full 16 sectors, even though RDOS itself is a 13 sector format.
public void writeRdosBlock(int block,
byte[] data)
Note that sectorSkew has the full 16 sectors, even though RDOS itself is a 13 sector format.
public java.lang.String getDiskName()
getDiskName in class FormattedDiskpublic java.util.List getFiles()
public FileEntry createFile()
throws DiskFullException
DiskFullExceptionpublic boolean canCreateDirectories()
public boolean canCreateFile()
public java.lang.String getFormat()
getFormat in class FormattedDiskpublic int getFreeBlocks()
public int getUsedBlocks()
public int getFreeSpace()
getFreeSpace in class FormattedDiskpublic int getUsedSpace()
getUsedSpace in class FormattedDiskpublic int[] getBitmapDimensions()
getBitmapDimensions in class FormattedDiskpublic int getBitmapLength()
getBitmapLength in class FormattedDiskpublic FormattedDisk.DiskUsage getDiskUsage()
getDiskUsage in class FormattedDiskpublic java.lang.String[] getBitmapLabels()
getBitmapLabels in class FormattedDiskpublic java.util.List getDiskInformation()
getDiskInformation in class FormattedDiskpublic java.util.List getFileColumnHeaders(int displayMode)
getFileColumnHeaders in class FormattedDiskpublic boolean supportsDeletedFiles()
supportsDeletedFiles in class FormattedDiskpublic boolean canReadFileData()
canReadFileData in class FormattedDiskpublic boolean canWriteFileData()
canWriteFileData in class FormattedDiskpublic boolean canHaveDirectories()
canHaveDirectories in class FormattedDiskpublic boolean canDeleteFile()
canDeleteFile in class FormattedDiskpublic byte[] getFileData(FileEntry fileEntry)
getFileData in class FormattedDiskFileEntry.getFileData()public void format()
format in class FormattedDiskFormattedDisk.format()public int getLogicalDiskNumber()
getLogicalDiskNumber in class FormattedDiskpublic java.lang.String getSuggestedFilename(java.lang.String filename)
getSuggestedFilename in class FormattedDiskpublic java.lang.String getSuggestedFiletype(java.lang.String filename)
getSuggestedFiletype in class FormattedDiskpublic java.lang.String[] getFiletypes()
getFiletypes in class FormattedDiskpublic boolean needsAddress(java.lang.String filetype)
needsAddress in class FormattedDiskpublic boolean supportsDiskMap()
supportsDiskMap in class FormattedDiskpublic void changeImageOrder(ImageOrder imageOrder)
changeImageOrder in class FormattedDiskImageOrder
public void setFileData(FileEntry fileEntry,
byte[] fileData)
throws DiskFullException
setFileData in class FormattedDiskDiskFullException
public DirectoryEntry createDirectory()
throws DiskFullException
DiskFullExceptionDirectoryEntry.createDirectory()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||