Skip to content

Instantly share code, notes, and snippets.

@spiiin
Created November 4, 2013 16:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save spiiin/7305188 to your computer and use it in GitHub Desktop.
Save spiiin/7305188 to your computer and use it in GitHub Desktop.
def takeScreen(hwnd, scrname):
wDC = win32gui.GetWindowDC(hwnd)
dcObj=win32ui.CreateDCFromHandle(wDC)
cDC=dcObj.CreateCompatibleDC()
dataBitMap = win32ui.CreateBitmap()
dataBitMap.CreateCompatibleBitmap(dcObj, 250, 210) #~=
cDC.SelectObject(dataBitMap)
cDC.BitBlt((0,0),(250, 210) , dcObj, (10,40), win32con.SRCCOPY) #~=
dataBitMap.SaveBitmapFile(cDC, scrname)
def doWork(romname, savename, screenname):
print 'fceux -loadstate %s %s'%(savename, romname)
p = subprocess.Popen('fceux -turbo 1 -loadstate %s %s'%(savename, romname)) #start game
time.sleep(0.5) #wait for game loaded
hwnd = win32gui.FindWindow(None, "FCEUX 2.2.0: %s"%DIRECT_ROM_NAME) #find window
takeScreen(hwnd, screenname) #take screenshot
p.kill()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment