Пример #1
0
 /** Initializes the cpu. */
 public void boot() {
   stackSegment.setStartAddress(Definitions.STACK_START_ADDRESS);
   workingStackSegment.setStartAddress(Definitions.STACK_START_ADDRESS);
   localSegment.setEnabledRange(
       Definitions.STACK_START_ADDRESS, Definitions.STACK_END_ADDRESS, true);
   argSegment.setEnabledRange(
       Definitions.STACK_START_ADDRESS, Definitions.STACK_END_ADDRESS, true);
   thisSegment.setEnabledRange(Definitions.HEAP_START_ADDRESS, Definitions.HEAP_END_ADDRESS, true);
   thatSegment.setEnabledRange(
       Definitions.HEAP_START_ADDRESS, Definitions.SCREEN_END_ADDRESS, true);
   staticSegment.setStartAddress(Definitions.VAR_START_ADDRESS);
   staticSegment.setEnabledRange(
       Definitions.VAR_START_ADDRESS, Definitions.VAR_END_ADDRESS - 1, true);
   setSP(Definitions.STACK_START_ADDRESS);
   stackFrames.clear();
   if (builtInFunctionsRunner != null) {
     builtInFunctionsRunner.killAllRunningBuiltInFunctions();
   }
 }