This commit is contained in:
Denis Molony 2019-06-02 20:46:51 +10:00
parent 76125f9a4e
commit ff8b66e0fb
4 changed files with 46 additions and 36 deletions

View File

@ -39,6 +39,8 @@ public class OriginalHiResImage extends HiResImage
// https://github.com/Michaelangel007/apple2_hgr_font_tutorial // https://github.com/Michaelangel007/apple2_hgr_font_tutorial
// hgr[ y ] = 0x2000 + (y/64)*0x28 + (y%8)*0x400 + ((y/8)&7)*0x80; // hgr[ y ] = 0x2000 + (y/64)*0x28 + (y%8)*0x400 + ((y/8)&7)*0x80;
// or... Y = aabbbccc
// address = BASE + aa * 0x28 + bb * 0x80 + ccc * 0x0400 + X
@Override @Override
protected void createMonochromeImage () protected void createMonochromeImage ()

View File

@ -93,9 +93,10 @@ public class InfocomDisk extends AbstractFormattedDisk
sectorTypes[48] = headerSector; sectorTypes[48] = headerSector;
setSectorTypes (header.abbreviationsTable, header.objectTableOffset, abbreviationsSector, setSectorTypes (header.abbreviationsTable, header.objectTableOffset,
abbreviationsNode); abbreviationsSector, abbreviationsNode);
setSectorTypes (header.objectTableOffset, header.globalsOffset, objectsSector, objectNode); setSectorTypes (header.objectTableOffset, header.globalsOffset, objectsSector,
objectNode);
setSectorTypes (header.globalsOffset, header.staticMemory, globalsSector, setSectorTypes (header.globalsOffset, header.staticMemory, globalsSector,
globalsNode); globalsNode);
setSectorTypes (header.staticMemory, header.dictionaryOffset, grammarSector, setSectorTypes (header.staticMemory, header.dictionaryOffset, grammarSector,
@ -232,7 +233,7 @@ public class InfocomDisk extends AbstractFormattedDisk
int abbreviationsTable = HexFormatter.intValue (buffer[25], buffer[24]); int abbreviationsTable = HexFormatter.intValue (buffer[25], buffer[24]);
int fileLength = HexFormatter.intValue (buffer[27], buffer[26]); int fileLength = HexFormatter.intValue (buffer[27], buffer[26]);
if (false) if (true)
{ {
System.out.printf ("Version %,6d%n", version); System.out.printf ("Version %,6d%n", version);
System.out.printf ("Abbreviations %,6d%n", abbreviationsTable); System.out.printf ("Abbreviations %,6d%n", abbreviationsTable);
@ -247,8 +248,8 @@ public class InfocomDisk extends AbstractFormattedDisk
if (abbreviationsTable >= objectTable) if (abbreviationsTable >= objectTable)
return false; return false;
if (objectTable >= globals) // if (objectTable >= globals)
return false; // return false;
if (globals >= staticMemory) if (globals >= staticMemory)
return false; return false;
if (staticMemory >= dictionary) if (staticMemory >= dictionary)

View File

@ -361,6 +361,10 @@ class FileEntry extends CatalogEntry implements ProdosConstants
} }
break; break;
case FILE_TYPE_FNT:
file = new FontFile (name, exactBuffer);
break;
case FILE_TYPE_FONT: case FILE_TYPE_FONT:
file = new QuickDrawFont (name, exactBuffer, fileType, auxType); file = new QuickDrawFont (name, exactBuffer, fileType, auxType);
break; break;

View File

@ -2,8 +2,11 @@ package com.bytezone.diskbrowser.prodos;
public interface ProdosConstants public interface ProdosConstants
{ {
int FILE_TYPE_PCD = 0x02;
int FILE_TYPE_TEXT = 0x04; int FILE_TYPE_TEXT = 0x04;
int FILE_TYPE_PDA = 0x05;
int FILE_TYPE_BINARY = 0x06; int FILE_TYPE_BINARY = 0x06;
int FILE_TYPE_FNT = 0x07;
int FILE_TYPE_FOT = 0x08; // was Apple /// FotoFile int FILE_TYPE_FOT = 0x08; // was Apple /// FotoFile
int FILE_TYPE_DIRECTORY = 0x0F; int FILE_TYPE_DIRECTORY = 0x0F;
int FILE_TYPE_ADB = 0x19; int FILE_TYPE_ADB = 0x19;