예제 #1
0
parser = argparse.ArgumentParser(description='Compile GCL source to GT1 object file')
parser.add_argument('-s', '--sym', dest='sym', default='interface.json',
                    help='Symbol file for interface bindings (default interface.json)')
parser.add_argument('-x', dest='gt1x', default=False, action='store_true',
                    help='Create .gt1x file'),
parser.add_argument('gclSource',
                    help='GCL file')
parser.add_argument('outputDir', nargs='?', default='.',
                    help='Optional output directory')
args = parser.parse_args()

#-----------------------------------------------------------------------
#       Compile
#-----------------------------------------------------------------------

asm.loadBindings(args.sym)
if args.gt1x:
  asm.loadBindings('Core/interface-dev.json')

userCode = asm.symbol('userCode')
userVars = asm.symbol('userVars')

print('Compiling file %s' % args.gclSource)
program = gcl.Program('Main', forRom=False)
program.org(userCode)
asm.align(1)          # Forces default maximum ROM size
asm.zpReset(userVars) # User variables can start here
for line in open(args.gclSource).readlines():
  program.line(line)
program.end()
asm.end() # End assembly
예제 #2
0
    '--sym',
    dest='sym',
    help='Symbol file for interface bindings (default interface.json)',
    default='interface.json')
parser.add_argument('gclSource', help='GCL file')
parser.add_argument('outputDir',
                    nargs='?',
                    default='.',
                    help='Optional output directory')
args = parser.parse_args()

#-----------------------------------------------------------------------
#       Compile
#-----------------------------------------------------------------------

asm.loadBindings(args.sym)

userCode = asm.symbol('userCode')
userVars = asm.symbol('userVars')

print('Compiling file %s' % args.gclSource)
program = gcl.Program('Main', forRom=False)
program.org(userCode)
asm.align(1)  # Forces default maximum ROM size
asm.zpReset(userVars)  # User variables can start here
for line in open(args.gclSource).readlines():
    program.line(line)
program.end()
asm.end()  # End assembly
data = asm.getRom1()