This commit is contained in:
Denis Molony 2019-11-28 14:36:49 +10:00
parent 7fa5eb6a00
commit 6cc3e64071
3 changed files with 42 additions and 8 deletions

View File

@ -20,6 +20,7 @@ public abstract class HiResImage extends AbstractFile
"Super Hi-Res Image (Apple Preferred Format)", "Packed QuickDraw II PICT File",
"Packed Super Hi-Res 3200 color image" };
static final int COLOR_TABLE_SIZE = 32;
public static final int FADDEN_AUX = 0x8066;
// ---- ---- ------ -------------------------------------- ------------------------
// File Type Aux Name Description
@ -74,7 +75,7 @@ public abstract class HiResImage extends AbstractFile
// $08 0000 .
// $08 4000 .
// $08 4001 .
// $08 8066 .
// $08 8066 3
// $C0 0000 1
// $C0 0001 $C1 0000 2 1
// $C0 0002 1
@ -85,6 +86,8 @@ public abstract class HiResImage extends AbstractFile
// $C0 8001 .
// $C0 8005 .
// $C0 8006 .
// $C1 0042 4
// $C1 0043 4
// $C1 2000 .
// $C1 4100 1
// $C1 4950 .
@ -94,6 +97,8 @@ public abstract class HiResImage extends AbstractFile
// 1 Graphics & Animation.2mg
// 2 0603 Katie's Farm - Disk 2.po
// 3 CompressedSlides.do
// 4 System Addons.hdv
//
static PaletteFactory paletteFactory = new PaletteFactory ();
@ -267,7 +272,7 @@ public abstract class HiResImage extends AbstractFile
auxText = "Packed Hi-Res File";
else if (auxType == 0x4001)
auxText = "Packed Double Hi-Res File";
else if (auxType == 0x8066)
else if (auxType == FADDEN_AUX)
auxText = "Fadden Hi-Res File";
else
auxText = "Unknown aux: " + auxType;
@ -282,6 +287,8 @@ public abstract class HiResImage extends AbstractFile
{
case 0:
case 0x2000:
case 0x0042:
case 0x0043:
auxText = "Super Hi-res Screen Image";
break;
case 1:
@ -639,6 +646,7 @@ public abstract class HiResImage extends AbstractFile
{
if (buffer.length < 4)
return false;
return buffer[0] == (byte) 0xC1 && buffer[1] == (byte) 0xD0
&& buffer[2] == (byte) 0xD0 && buffer[3] == 0;
}

View File

@ -139,6 +139,8 @@ public class SHRPictureFile2 extends HiResImage
{
case 0: // unpacked version of PNT/$01
case 0x2000: // see TotalReplay.2mg
case 0x0042:
case 0x0043:
case 0x4100: // no idea what this is
case 0x4950:
// 00000 - 31999 pixel data 32,000 bytes
@ -189,6 +191,7 @@ public class SHRPictureFile2 extends HiResImage
void createMonochromeImage ()
// ---------------------------------------------------------------------------------//
{
System.out.println ("monochrome not written");
}
// ---------------------------------------------------------------------------------//
@ -224,10 +227,8 @@ public class SHRPictureFile2 extends HiResImage
if (mode320) // two pixels per col
ptr = mode320Line (ptr, element, max, colorTable, dataBuffer, imageWidth);
else // four pixels per col
{
System.out.println ("here 640");
ptr = mode640Line (ptr, element, max, colorTable, dataBuffer, imageWidth);
}
element += imageWidth * 2; // skip line already drawn
}
}
@ -238,7 +239,7 @@ public class SHRPictureFile2 extends HiResImage
// ---------------------------------------------------------------------------------//
{
StringBuilder text = new StringBuilder (super.getText ());
text.append ("\n");
text.append ("\n\n");
if (controlBytes != null)
{

View File

@ -4,7 +4,32 @@ import java.util.ArrayList;
import java.util.GregorianCalendar;
import java.util.List;
import com.bytezone.diskbrowser.applefile.*;
import com.bytezone.diskbrowser.applefile.ApplesoftBasicProgram;
import com.bytezone.diskbrowser.applefile.AssemblerProgram;
import com.bytezone.diskbrowser.applefile.BasicProgramGS;
import com.bytezone.diskbrowser.applefile.CharacterRom;
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.FaddenHiResImage;
import com.bytezone.diskbrowser.applefile.FileSystemTranslator;
import com.bytezone.diskbrowser.applefile.FileTypeDescriptorTable;
import com.bytezone.diskbrowser.applefile.FontFile;
import com.bytezone.diskbrowser.applefile.HiResImage;
import com.bytezone.diskbrowser.applefile.IconFile;
import com.bytezone.diskbrowser.applefile.IntegerBasicProgram;
import com.bytezone.diskbrowser.applefile.LodeRunner;
import com.bytezone.diskbrowser.applefile.MerlinSource;
import com.bytezone.diskbrowser.applefile.OriginalHiResImage;
import com.bytezone.diskbrowser.applefile.QuickDrawFont;
import com.bytezone.diskbrowser.applefile.SHRPictureFile1;
import com.bytezone.diskbrowser.applefile.SHRPictureFile2;
import com.bytezone.diskbrowser.applefile.ShapeTable;
import com.bytezone.diskbrowser.applefile.SimpleText;
import com.bytezone.diskbrowser.applefile.StoredVariables;
import com.bytezone.diskbrowser.applefile.TextBuffer;
import com.bytezone.diskbrowser.applefile.TextFile;
import com.bytezone.diskbrowser.appleworks.AppleworksADBFile;
import com.bytezone.diskbrowser.appleworks.AppleworksSSFile;
import com.bytezone.diskbrowser.appleworks.AppleworksWPFile;
@ -393,7 +418,7 @@ class FileEntry extends CatalogEntry implements ProdosConstants
break;
case FILE_TYPE_FOT:
if (auxType == 0x8066) // Fadden
if (auxType == HiResImage.FADDEN_AUX)
file = new FaddenHiResImage (name, exactBuffer, fileType, auxType, endOfFile);
else
{