|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.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 FormattedDisk
public java.util.List getFiles()
public FileEntry createFile() throws DiskFullException
DiskFullException
public boolean canCreateDirectories()
public boolean canCreateFile()
public java.lang.String getFormat()
getFormat
in class FormattedDisk
public int getFreeBlocks()
public int getUsedBlocks()
public int getFreeSpace()
getFreeSpace
in class FormattedDisk
public int getUsedSpace()
getUsedSpace
in class FormattedDisk
public int[] getBitmapDimensions()
getBitmapDimensions
in class FormattedDisk
public int getBitmapLength()
getBitmapLength
in class FormattedDisk
public FormattedDisk.DiskUsage getDiskUsage()
getDiskUsage
in class FormattedDisk
public java.lang.String[] getBitmapLabels()
getBitmapLabels
in class FormattedDisk
public java.util.List getDiskInformation()
getDiskInformation
in class FormattedDisk
public java.util.List getFileColumnHeaders(int displayMode)
getFileColumnHeaders
in class FormattedDisk
public boolean supportsDeletedFiles()
supportsDeletedFiles
in class FormattedDisk
public boolean canReadFileData()
canReadFileData
in class FormattedDisk
public boolean canWriteFileData()
canWriteFileData
in class FormattedDisk
public boolean canHaveDirectories()
canHaveDirectories
in class FormattedDisk
public boolean canDeleteFile()
canDeleteFile
in class FormattedDisk
public byte[] getFileData(FileEntry fileEntry)
getFileData
in class FormattedDisk
FileEntry.getFileData()
public void format()
format
in class FormattedDisk
FormattedDisk.format()
public int getLogicalDiskNumber()
getLogicalDiskNumber
in class FormattedDisk
public java.lang.String getSuggestedFilename(java.lang.String filename)
getSuggestedFilename
in class FormattedDisk
public java.lang.String getSuggestedFiletype(java.lang.String filename)
getSuggestedFiletype
in class FormattedDisk
public java.lang.String[] getFiletypes()
getFiletypes
in class FormattedDisk
public boolean needsAddress(java.lang.String filetype)
needsAddress
in class FormattedDisk
public boolean supportsDiskMap()
supportsDiskMap
in class FormattedDisk
public void changeImageOrder(ImageOrder imageOrder)
changeImageOrder
in class FormattedDisk
ImageOrder
public void setFileData(FileEntry fileEntry, byte[] fileData) throws DiskFullException
setFileData
in class FormattedDisk
DiskFullException
public DirectoryEntry createDirectory() throws DiskFullException
DiskFullException
DirectoryEntry.createDirectory()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |