summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/windows/window.cpp
diff options
context:
space:
mode:
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
commit91c910e73c8b0faadf9381bc9626dbede88f04fe (patch)
tree648239678f6a3b5c4fb5e64309191b166cfe3e74 /src/osd/windows/window.cpp
parent599570bf7f3a01baec9a56edf81075d82a5e4a51 (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.cpp9
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);