diff --git a/src/com/bytezone/diskbrowser/infocom/CodeManager.java b/src/com/bytezone/diskbrowser/infocom/CodeManager.java index 964f055..90dd716 100644 --- a/src/com/bytezone/diskbrowser/infocom/CodeManager.java +++ b/src/com/bytezone/diskbrowser/infocom/CodeManager.java @@ -15,9 +15,9 @@ import com.bytezone.diskbrowser.utilities.HexFormatter; class CodeManager extends AbstractFile { - Header header; - int codeSize; - Map routines = new TreeMap (); + private final Header header; + private int codeSize; + private final Map routines = new TreeMap (); public CodeManager (Header header) { @@ -60,7 +60,7 @@ class CodeManager extends AbstractFile return blocks; } - public void addMissingRoutines () + void addMissingRoutines () { System.out.printf ("%nWalking the code block%n%n"); int total = 0; @@ -125,12 +125,12 @@ class CodeManager extends AbstractFile return text.toString (); } - public boolean containsRoutineAt (int address) + boolean containsRoutineAt (int address) { return (routines.containsKey (address)); } - public void addCodeRoutines () + void addCodeRoutines () { List routines = header.objectManager.getCodeRoutines (); System.out.println ("Adding " + routines.size () + " code routines"); @@ -138,7 +138,7 @@ class CodeManager extends AbstractFile addRoutine (address, 0); } - public void addActionRoutines () + void addActionRoutines () { List routines = header.grammar.getActionRoutines (); System.out.println ("Adding " + routines.size () + " action routines"); @@ -146,7 +146,7 @@ class CodeManager extends AbstractFile addRoutine (address, 0); } - public Routine addRoutine (int address, int caller) + Routine addRoutine (int address, int caller) { if (address == 0) // stack-based call return null; @@ -174,7 +174,7 @@ class CodeManager extends AbstractFile return r; } - public Routine getRoutine (int address) + Routine getRoutine (int address) { return routines.get (address); } diff --git a/src/com/bytezone/diskbrowser/infocom/Header.java b/src/com/bytezone/diskbrowser/infocom/Header.java index 3206aa1..4e6ea47 100755 --- a/src/com/bytezone/diskbrowser/infocom/Header.java +++ b/src/com/bytezone/diskbrowser/infocom/Header.java @@ -22,13 +22,13 @@ class Header extends InfocomAbstractFile int checksum; int stringPointer; - Abbreviations abbreviations; - Dictionary dictionary; - ObjectManager objectManager; - StringManager stringManager; - CodeManager codeManager; - Globals globals; - Grammar grammar; + final Abbreviations abbreviations; + final Dictionary dictionary; + final ObjectManager objectManager; + final StringManager stringManager; + final CodeManager codeManager; + final Globals globals; + final Grammar grammar; public Header (String name, byte[] buffer, Disk disk) { diff --git a/src/com/bytezone/diskbrowser/visicalc/Cell.java b/src/com/bytezone/diskbrowser/visicalc/Cell.java index bc32f61..f5f161a 100644 --- a/src/com/bytezone/diskbrowser/visicalc/Cell.java +++ b/src/com/bytezone/diskbrowser/visicalc/Cell.java @@ -195,7 +195,7 @@ class Cell implements Comparable, Value @Override public boolean isError () { - assert isValue () : "Cell type: " + type; + // assert isValue () : "Cell type: " + type; return value.isError (); } @@ -211,7 +211,12 @@ class Cell implements Comparable, Value @Override public Value calculate () { - assert type == CellType.VALUE; + if (!isValue ()) + { + System.out.println ("Not a value"); + return this; + } + assert isValue () : "Cell type: " + type + " @ " + address; if (expressionText == null) { System.out.printf ("%s null expression text %n", address); diff --git a/src/com/bytezone/diskbrowser/visicalc/Expression.java b/src/com/bytezone/diskbrowser/visicalc/Expression.java index c382154..bbad68d 100644 --- a/src/com/bytezone/diskbrowser/visicalc/Expression.java +++ b/src/com/bytezone/diskbrowser/visicalc/Expression.java @@ -124,7 +124,7 @@ class Expression implements Value @Override public Value calculate () { - // System.out.printf ("Calculating: %s%n", text); + System.out.printf ("Calculating: %s%n", text); // if (text.equals ("@NA")) // Utility.printStackTrace ();