dmolony-DiskBrowser/src/com/bytezone/diskbrowser/applefile/BasicProgram.java

63 lines
2.4 KiB
Java
Raw Normal View History

2019-08-09 23:45:49 +00:00
package com.bytezone.diskbrowser.applefile;
import com.bytezone.diskbrowser.gui.BasicPreferences;
2020-12-30 03:06:50 +00:00
import com.bytezone.diskbrowser.utilities.Utility;
2019-08-09 23:45:49 +00:00
2020-09-13 00:22:49 +00:00
// -----------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
public abstract class BasicProgram extends AbstractFile
2020-09-13 00:22:49 +00:00
// -----------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
{
2019-09-04 20:44:43 +00:00
static BasicPreferences basicPreferences; // set by MenuHandler
2019-08-09 23:45:49 +00:00
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
public static void setBasicPreferences (BasicPreferences basicPreferences)
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
{
2019-09-04 20:44:43 +00:00
BasicProgram.basicPreferences = basicPreferences;
2019-08-09 23:45:49 +00:00
}
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
public BasicProgram (String name, byte[] buffer)
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
{
super (name, buffer);
}
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-09-04 20:44:43 +00:00
boolean isHighBitSet (byte value)
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
{
return (value & 0x80) != 0;
}
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
boolean isControlCharacter (byte value)
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
{
2019-09-04 20:44:43 +00:00
int val = value & 0xFF;
return val > 0 && val < 32;
2019-08-09 23:45:49 +00:00
}
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
boolean isDigit (byte value)
2020-09-13 00:22:49 +00:00
// ---------------------------------------------------------------------------------//
2019-08-09 23:45:49 +00:00
{
2020-12-26 08:32:40 +00:00
return value >= 0x30 && value <= 0x39;
}
// ---------------------------------------------------------------------------------//
boolean isLetter (byte value)
// ---------------------------------------------------------------------------------//
{
return value >= 0x41 && value <= 0x5A;
}
2020-12-29 04:39:29 +00:00
// ---------------------------------------------------------------------------------//
2020-12-26 08:32:40 +00:00
boolean isPossibleVariable (byte value)
2020-12-29 04:39:29 +00:00
// ---------------------------------------------------------------------------------//
2020-12-26 08:32:40 +00:00
{
2020-12-30 03:06:50 +00:00
return isDigit (value) || isLetter (value) || value == Utility.ASCII_DOLLAR
|| value == Utility.ASCII_PERCENT;
2019-08-09 23:45:49 +00:00
}
}