mirror of
https://github.com/dmolony/DiskBrowser.git
synced 2024-06-13 21:29:31 +00:00
Added exomizer unpacking
This commit is contained in:
parent
2bee4abe92
commit
62e9b22caa
|
@ -662,6 +662,18 @@ public abstract class HiResImage extends AbstractFile
|
|||
&& buffer[2] == (byte) 0xD0 && buffer[3] == 0;
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------------//
|
||||
public static boolean isExo (byte[] buffer)
|
||||
// ---------------------------------------------------------------------------------//
|
||||
{
|
||||
if (buffer[0] == 1 && buffer[1] == 0)
|
||||
{
|
||||
// ExoBuffer exoBuffer = new ExoBuffer (buffer);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------------//
|
||||
public static PaletteFactory getPaletteFactory ()
|
||||
// ---------------------------------------------------------------------------------//
|
||||
|
|
|
@ -12,6 +12,7 @@ import com.bytezone.diskbrowser.applefile.DefaultAppleFile;
|
|||
import com.bytezone.diskbrowser.applefile.DeviceDriver;
|
||||
import com.bytezone.diskbrowser.applefile.DoubleHiResImage;
|
||||
import com.bytezone.diskbrowser.applefile.ErrorMessageFile;
|
||||
import com.bytezone.diskbrowser.applefile.ExoBuffer;
|
||||
import com.bytezone.diskbrowser.applefile.FaddenHiResImage;
|
||||
import com.bytezone.diskbrowser.applefile.FileSystemTranslator;
|
||||
import com.bytezone.diskbrowser.applefile.FileTypeDescriptorTable;
|
||||
|
@ -318,6 +319,11 @@ class FileEntry extends CatalogEntry implements ProdosConstants
|
|||
file = new DoubleHiResImage (name, exactBuffer);
|
||||
else if (endOfFile == 0x4000 && auxType == 0x4000)
|
||||
file = new DoubleHiResImage (name, exactBuffer);
|
||||
else if (auxType == 0x3FF8 && HiResImage.isExo (exactBuffer))
|
||||
{
|
||||
ExoBuffer exoBuffer = new ExoBuffer (exactBuffer);
|
||||
file = new OriginalHiResImage (name, exoBuffer.getExpandedBuffer (), 0x4000);
|
||||
}
|
||||
else if (oneOf (endOfFile, 0x1FF8, 0x1FFF, 0x2000, 0x4000)
|
||||
&& oneOf (auxType, 0x1FFF, 0x2000, 0x4000, 0x6000))
|
||||
file = new OriginalHiResImage (name, exactBuffer, auxType);
|
||||
|
|
Loading…
Reference in New Issue
Block a user