Example #1
0
 def run(self):
     FOLDER = "C:\Users\saikumar\workspace\Nand2Tetris\\07\\"
     files = ['SimpleAdd.vm', 'StackTest.vm', 
              'BasicTest.vm', 'PointerTest.vm', 'StaticTest.vm']
     for file_name in files:
         file_name = FOLDER + file_name
         parser = Parser(file_name)
         parser.first_scan()
         code_writer = CodeWriter(parser)
         code_writer.generate_code()
Example #2
0
 def run(self):
     FOLDER = "C:\Users\saikumar\workspace\Nand2Tetris\\07\\"
     files = [
         'SimpleAdd.vm', 'StackTest.vm', 'BasicTest.vm', 'PointerTest.vm',
         'StaticTest.vm'
     ]
     for file_name in files:
         file_name = FOLDER + file_name
         parser = Parser(file_name)
         parser.first_scan()
         code_writer = CodeWriter(parser)
         code_writer.generate_code()
Example #3
0
 def run(self):
     PATH = "E:\\Nand2Tetris\\nand2tetris\\projects\\08\\FunctionCalls\\FibonacciElement"
     PATH = os.path.abspath(PATH)
     if os.path.isdir(PATH):
         file_name = string.rsplit(PATH, "\\", 1)[1]
         code_writer = CodeWriter(PATH=PATH)
         print "The path is directory " + PATH
         code_writer.set_filename(file_name + ".asm")
         code_writer.start_up_code()
         vm_files = [f for f in os.listdir(PATH) if f.find(".vm") > 0]
         if "Sys.vm" in vm_files:
             sysindex = vm_files.index("Sys.vm")
             vm_files[0], vm_files[sysindex] = vm_files[sysindex], vm_files[0]
         for file_name in vm_files:
             print file_name
             parser = Parser(file_name, PATH)
             parser.first_scan()
             code_writer.set_parser(parser)
             code_writer.generate_code()
         code_writer.terminate_code()
     else:
         print "The path is file " + PATH
         PATH, file_name = string.rsplit(PATH, "\\", 1)
         parser = Parser(file_name, PATH)
         parser.first_scan()
         code_writer = CodeWriter(PATH=PATH)
         code_writer.set_parser(parser)
         code_writer.set_filename(string.rsplit(file_name, ".", 1)[0] + ".asm")
         code_writer.start_up_code()
         code_writer.generate_code()
         code_writer.terminate_code()
 def run(self):
     PATH = "C:\\Users\\Habib Derbyshire\\Documents\\Nand2Tetris\\System-Design-in-Computational-Thinking-2018-Spring\\team3\\habibi9\\08\\FunctionCalls\\FibonacciElement"
     PATH = os.path.abspath(PATH)
     print('testing!')
     if os.path.isdir(PATH):
         #file_name = str.split(PATH, '\\', 1)[1]
         file_name = PATH
         codeWriter = CodeWriter(PATH=PATH)
         print('The path is directory ' + PATH)
         codeWriter.set_filename(file_name + '.asm')
         codeWriter.start_up_code()
         vm_files = [f for f in os.listdir(PATH) if f.find('.vm') > 0]
         if 'Sys.vm' in vm_files:
             sysindex = vm_files.index('Sys.vm')
             vm_files[0], vm_files[sysindex] = vm_files[sysindex], vm_files[
                 0]
         for file_name in vm_files:
             print(file_name)
             parser = Parser(file_name, PATH)
             parser.first_scan()
             codeWriter.set_parser(parser)
             codeWriter.generate_code()
         codeWriter.terminate_code()
     else:
         print('The path is file ' + PATH)
         PATH, file_name = str.split(PATH, '\\', 1)
         parser = Parser(file_name, PATH)
         parser.first_scan()
         codeWriter = CodeWriter(PATH=PATH)
         codeWriter.set_parser(parser)
         codeWriter.set_filename(
             string.split(file_name, '.', 1)[0] + '.asm')
         codeWriter.start_up_code()
         codeWriter.generate_code()
         codeWriter.terminate_code()
Example #5
0
 def run(self):
     PATH = "E:\\Nand2Tetris\\nand2tetris\\projects\\08\\FunctionCalls\\FibonacciElement"
     PATH = os.path.abspath(PATH)
     if os.path.isdir(PATH):
         file_name = string.rsplit(PATH, '\\', 1)[1]
         code_writer = CodeWriter(PATH=PATH)
         print 'The path is directory ' + PATH
         code_writer.set_filename(file_name + '.asm')
         code_writer.start_up_code()
         vm_files = [f for f in os.listdir(PATH) if f.find('.vm') > 0]
         if 'Sys.vm' in vm_files:
             sysindex = vm_files.index('Sys.vm')
             vm_files[0], vm_files[sysindex] = vm_files[sysindex], vm_files[
                 0]
         for file_name in vm_files:
             print file_name
             parser = Parser(file_name, PATH)
             parser.first_scan()
             code_writer.set_parser(parser)
             code_writer.generate_code()
         code_writer.terminate_code()
     else:
         print 'The path is file ' + PATH
         PATH, file_name = string.rsplit(PATH, '\\', 1)
         parser = Parser(file_name, PATH)
         parser.first_scan()
         code_writer = CodeWriter(PATH=PATH)
         code_writer.set_parser(parser)
         code_writer.set_filename(
             string.rsplit(file_name, '.', 1)[0] + '.asm')
         code_writer.start_up_code()
         code_writer.generate_code()
         code_writer.terminate_code()