maxm6 wrote
I didn't understand how can I test output.jack
Compile your Output.jack in the OutputTest directory.
Open the OutputTest directory in the VM Emulator and run it. It ends by hitting the infinite loop.
After the test, the Screen should look like this:
Your code appears to have crashed in a Memory.alloc() call during font initialization in Output.initMap(). Memory.alloc() probably failed because its control structures (segment headers) were overwritten.
The most common reason for Memory.alloc to fail is that you wrote beyond the end of a memory segment returned by a previous alloc() call. That is, for example, you wrote 12 words to a segment that is only 11 words long.
This failure can also occasionally occur if you have an loop in your code the causes continuous calls to alloc(), but usually in that case you can see a call to Sys.error() on the top of the call stack.
--Mark