2015-06-01 09:35:51 +00:00
|
|
|
package com.bytezone.diskbrowser.prodos;
|
|
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
import com.bytezone.diskbrowser.disk.DiskAddress;
|
|
|
|
import com.bytezone.diskbrowser.gui.DataSource;
|
2016-02-24 21:11:14 +00:00
|
|
|
import com.bytezone.diskbrowser.utilities.HexFormatter;
|
2015-06-01 09:35:51 +00:00
|
|
|
|
|
|
|
class SubDirectoryHeader extends DirectoryHeader
|
|
|
|
{
|
2016-02-28 07:17:58 +00:00
|
|
|
private final int parentPointer;
|
|
|
|
private final int parentSequence;
|
|
|
|
private final int parentSize;
|
|
|
|
|
|
|
|
public SubDirectoryHeader (ProdosDisk parentDisk, byte[] entryBuffer, FileEntry parent)
|
|
|
|
{
|
|
|
|
super (parentDisk, entryBuffer);
|
|
|
|
this.parentDirectory = parent.parentDirectory;
|
|
|
|
|
|
|
|
parentPointer = HexFormatter.intValue (entryBuffer[35], entryBuffer[36]);
|
2016-12-17 22:07:55 +00:00
|
|
|
parentSequence = entryBuffer[37] & 0xFF;
|
|
|
|
parentSize = entryBuffer[38] & 0xFF;
|
2016-02-28 07:17:58 +00:00
|
|
|
|
2018-04-25 20:41:03 +00:00
|
|
|
if (false)
|
|
|
|
System.out.printf ("", parentPointer, parentSequence, parentSize);
|
2016-02-28 07:17:58 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public DataSource getDataSource ()
|
|
|
|
{
|
|
|
|
// should this return a directory listing?
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public List<DiskAddress> getSectors ()
|
|
|
|
{
|
|
|
|
return null;
|
|
|
|
}
|
2018-04-25 20:41:03 +00:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public String toString ()
|
|
|
|
{
|
|
|
|
String locked = (access == 0x01) ? "*" : " ";
|
|
|
|
return String.format (" %s%-40s %15s", locked, "/" + name,
|
|
|
|
parentDisk.df.format (created.getTime ()));
|
|
|
|
}
|
2015-06-01 09:35:51 +00:00
|
|
|
}
|