mika76 / mamesaver

Mamesaver is a mame emulated screensaver - get all the good ol' games playing their demo modes while you procrastinate and enjoy!
https://mika76.github.io/mamesaver/
MIT License
36 stars 10 forks source link

Multi-monitor support, update logging, IL merge #17

Closed andyvans closed 5 years ago

andyvans commented 5 years ago
  1. Add support to clone to all system monitors. This involves cloning the primary windows with Mame to all BlankScreens windows using GDI.

  2. Added Serilog logging support to allow decent logging to assist diagnosing crashes. Debug logging goes to a file in the temp directory. Release logging goes to the event log. (Serilog won't crash if the event source doesn't exist - the old code did).

  3. To avoid needing to install required dependency dll files into c:\windows\system32, I have added an ILMerge build task to combine all assemblies into the single .SCR file.

  4. To exit the screen saver faster, perform a window minimise of Mame, then stop the process.

  5. Updated README.md - Added new pictures of Options window with Clone option. Updated contributors.

I appreciate there are a lot of changes in this PR.

mika76 commented 5 years ago

Wow @andyvans this is great stuff! Will this clash at all with what @nullpainter is doing in #15?

Serilog won't crash if the event source doesn't exist - the old code did

Heh yeah 11 years ago we didn't have UAC 😆

mika76 commented 5 years ago

Found a little issue - if the resolution is different - let's say smaller on the main mame screen and larger on a second screen, the clone does not cover the whole screen...

nullpainter commented 5 years ago

Will this clash at all with what @nullpainter is doing in #15?

I'm guessing there may be a few little merge conflicts. Feel free to pull this PR first and I'll fix up any issues with #15 as a result.

mika76 commented 5 years ago

Cool. Merged. Fixes #9. This is a great addition! 💯 🥇