diff options
author | Miodrag Milanovic <mmicko@gmail.com> | 2016-03-01 10:05:59 +0100 |
---|---|---|
committer | Miodrag Milanovic <mmicko@gmail.com> | 2016-03-01 13:09:50 +0100 |
commit | 91c910e73c8b0faadf9381bc9626dbede88f04fe (patch) | |
tree | 648239678f6a3b5c4fb5e64309191b166cfe3e74 /src/osd/windows/window.cpp | |
parent | 599570bf7f3a01baec9a56edf81075d82a5e4a51 (diff) |
Use std::atomic and std::mutex where applicable (nw)
Diffstat (limited to 'src/osd/windows/window.cpp')
-rw-r--r-- | src/osd/windows/window.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/osd/windows/window.cpp b/src/osd/windows/window.cpp index 33c202c1da8..52d0a898df7 100644 --- a/src/osd/windows/window.cpp +++ b/src/osd/windows/window.cpp @@ -12,9 +12,12 @@ // Needed for RAW Input #define WM_INPUT 0x00FF +#include <stdio.h> // must be here otherwise issues with I64FMT in MINGW // standard C headers #include <process.h> +#include <atomic> + // MAME headers #include "emu.h" #include "uiinput.h" @@ -127,11 +130,11 @@ struct mtlog }; static mtlog mtlog[100000]; -static volatile INT32 mtlogindex; +static std::atomic<INT32> mtlogindex; void mtlog_add(const char *event) { - int index = atomic_increment32((INT32 *) &mtlogindex) - 1; + int index = mtlogindex++; if (index < ARRAY_LENGTH(mtlog)) { mtlog[index].timestamp = osd_ticks(); @@ -149,7 +152,7 @@ static void mtlog_dump(void) for (i = 0; i < mtlogindex; i++) { osd_ticks_t curr = mtlog[i].timestamp * 1000000 / cps; - fprintf(f, "%20I64d %10I64d %s\n", curr, curr - last, mtlog[i].event); + fprintf(f, "%20" I64FMT "d %10" I64FMT "d %s\n", (UINT64)curr, (UINT64)(curr - last), mtlog[i].event); last = curr; } fclose(f); |