If you want to make emulators then sfml and sdl are bad choice you need some low-level graphics api like pure opengl to make emulator, vecause you need to "translate" the bute code to of executable. To translate it you need to provide an alternative to functions that it calls. For exmaple on original platform we have a call to procedure graphics_create_texture, how will you handle it with sfm? You need normal Opengl function - glCreateTexture. If you still misunderstood this then you should understand how wine emulator works.