Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
alexbevi
GitHub Repository: alexbevi/BizHawk
Path: blob/master/libsnes/lsnes_patches/0003-Allow-frontend-to-control-random-number-seed.patch
2 views
1
From 5f76449a70c9a546e18c2fdebe7588bbe90b56d2 Mon Sep 17 00:00:00 2001
2
From: Ilari Liusvaara <[email protected]>
3
Date: Fri, 11 Nov 2011 19:49:46 +0200
4
Subject: [PATCH 3/4] Allow frontend to control random number seed
5
6
---
7
snes/interface/interface.cpp | 5 +++++
8
snes/interface/interface.hpp | 1 +
9
snes/system/system.cpp | 2 +-
10
3 files changed, 7 insertions(+), 1 deletions(-)
11
12
diff --git a/snes/interface/interface.cpp b/snes/interface/interface.cpp
13
index b3017c9..0a21a13 100755
14
--- snes/interface/interface.cpp
15
+++ snes/interface/interface.cpp
16
@@ -23,4 +23,9 @@ time_t Interface::currentTime()
17
return time(0);
18
}
19
20
+time_t Interface::randomSeed()
21
+{
22
+ return time(0);
23
+}
24
+
25
}
26
diff --git a/snes/interface/interface.hpp b/snes/interface/interface.hpp
27
index df975e8..30ee7fd 100755
28
--- snes/interface/interface.hpp
29
+++ snes/interface/interface.hpp
30
@@ -6,6 +6,7 @@ struct Interface {
31
virtual string path(Cartridge::Slot slot, const string &hint) = 0;
32
virtual void message(const string &text);
33
virtual time_t currentTime();
34
+ virtual time_t randomSeed();
35
};
36
37
extern Interface *interface;
38
diff --git a/snes/system/system.cpp b/snes/system/system.cpp
39
index 9b70bbf..cbd096c 100755
40
--- snes/system/system.cpp
41
+++ snes/system/system.cpp
42
@@ -151,7 +151,7 @@ void System::unload() {
43
}
44
45
void System::power() {
46
- random.seed((unsigned)time(0));
47
+ random.seed((unsigned)interface->randomSeed());
48
49
region = config.region;
50
expansion = config.expansion_port;
51
--
52
1.7.9.48.g85da4d
53
54
55