コード例 #1
0
def entry_point(argv=None):
    if argv is not None and len(argv) > 1:
        filename = argv[1]
    else:
        pos = str(9)
        filename = ROM_PATH + "/rom" + pos + "/rom" + pos + ".gb"
    print "loading rom: ", str(filename)
    gameBoy = GameBoyImplementation()
    try:
        gameBoy.load_cartridge_file(str(filename))
    except:
        print "Corrupt Cartridge"
        gameBoy.load_cartridge_file(str(filename), verify=False)

    gameBoy.open_window()
    gameBoy.mainLoop()

    return 0
コード例 #2
0
def entry_point(argv=None):
    if argv is not None and len(argv) > 1:
        filename = argv[1]
    else:
        pos = str(9)
        filename = ROM_PATH+"/rom"+pos+"/rom"+pos+".gb"
    print "loading rom: ", str(filename)
    gameBoy = GameBoyImplementation()
    try:
        gameBoy.load_cartridge_file(str(filename))
    except:
        print "Corrupt Cartridge"
        gameBoy.load_cartridge_file(str(filename), verify=False)

    gameBoy.open_window()
    gameBoy.mainLoop()

    return 0
コード例 #3
0
    def draw_logo(self):
        for index in range(0, 48):
            bits = self.memory_bank_controller.read(0x0104 + index)
            pattern0 = ((bits >> 0) & 0x80) + ((bits >> 1) & 0x60) + \
                       ((bits >> 2) & 0x18) + ((bits >> 3) & 0x06) + \
                       ((bits >> 4) & 0x01)
            pattern1 = ((bits << 4) & 0x80) + ((bits << 3) & 0x60) + \
                       ((bits << 2) & 0x18) + ((bits << 1) & 0x06) + \
                       ((bits << 0) & 0x01)
            self.video.write(0x8010 + (index << 3), pattern0)
            self.video.write(0x8012 + (index << 3), pattern0)
            self.video.write(0x8014 + (index << 3), pattern1)
            self.video.write(0x8016 + (index << 3), pattern1)
        for index in range(0, 8):
            self.video.write(0x8190 + (index << 1), \
                             constants.REGISTERED_BITMAP[index])
        for tile in range(0, 12):
            self.video.write(0x9904 + tile, tile + 1)
            self.video.write(0x9924 + tile, tile + 13)
        self.video.write(0x9904 + 12, 25)


if __name__ == '__main__':
    import sys
    from pypy.lang.gameboy.gameboy_implementation import GameBoyImplementation
    gameboy = GameBoyImplementation()
    rom = sys.argv[1]
    print rom
    gameboy.load_cartridge_file(rom, verify=True)
    gameboy.mainLoop()