Skip to content

Commit af2d21f

Browse files
committed
fix: Roll back ROM ID inspector debug.
1 parent c76cc65 commit af2d21f

File tree

2 files changed

+37
-30
lines changed

2 files changed

+37
-30
lines changed

VisualPinball.Engine.PinMAME.Unity/Editor/PinMameGamelogicEngineInspector.cs

Lines changed: 36 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -83,36 +83,36 @@ private void OnEnable()
8383
public override void OnInspectorGUI()
8484
{
8585
// game dropdown
86-
_gle.romId = EditorGUILayout.TextField("ROM ID", _gle.romId);
87-
88-
// EditorGUI.BeginChangeCheck();
89-
// _selectedGameIndex = EditorGUILayout.Popup("Game", _selectedGameIndex, _gameNames);
90-
// if (EditorGUI.EndChangeCheck()) {
91-
// _selectedRomIndex = 0;
92-
// if (_selectedGameIndex > 0) {
93-
// _gle.Game = _games[_selectedGameIndex - 1];
94-
// _gle.romId = Rom.Id;
95-
// _romNames = _gle.Game.Roms.Select(g => g.ToString()).ToArray();
96-
//
97-
// } else {
98-
// _gle.Game = null;
99-
// _gle.romId = string.Empty;
100-
// _romNames = new string[0];
101-
// }
102-
// }
103-
104-
// rom dropdown
105-
// EditorGUI.BeginDisabledGroup(_gle.Game == null);
106-
// EditorGUI.BeginChangeCheck();
107-
// _selectedRomIndex = EditorGUILayout.Popup("ROM", _selectedRomIndex, _romNames);
108-
// if (EditorGUI.EndChangeCheck()) {
109-
// _gle.romId = Rom.Id;
110-
// }
111-
//
112-
// // info label
113-
// EditorGUILayout.LabelField("ROM ID", _gle.romId);
86+
//_gle.romId = EditorGUILayout.TextField("ROM ID", _gle.romId);
11487

115-
//EditorGUI.EndDisabledGroup();
88+
EditorGUI.BeginChangeCheck();
89+
_selectedGameIndex = EditorGUILayout.Popup("Game", _selectedGameIndex, _gameNames);
90+
if (EditorGUI.EndChangeCheck()) {
91+
_selectedRomIndex = 0;
92+
if (_selectedGameIndex > 0) {
93+
_gle.Game = _games[_selectedGameIndex - 1];
94+
_gle.romId = Rom.Id;
95+
_romNames = _gle.Game.Roms.Select(g => g.ToString()).ToArray();
96+
97+
} else {
98+
_gle.Game = null;
99+
_gle.romId = string.Empty;
100+
_romNames = new string[0];
101+
}
102+
}
103+
104+
//rom dropdown
105+
EditorGUI.BeginDisabledGroup(_gle.Game == null);
106+
EditorGUI.BeginChangeCheck();
107+
_selectedRomIndex = EditorGUILayout.Popup("ROM", _selectedRomIndex, _romNames);
108+
if (EditorGUI.EndChangeCheck()) {
109+
_gle.romId = Rom.Id;
110+
}
111+
112+
// info label
113+
EditorGUILayout.LabelField("ROM ID", _gle.romId);
114+
115+
EditorGUI.EndDisabledGroup();
116116

117117
EditorGUILayout.Space();
118118
EditorGUILayout.Separator();
@@ -227,9 +227,16 @@ private void CreateDisplays(IEnumerable<DisplayAuthoring> sceneDisplays)
227227
tableHeight + (numRows - top) * charHeight,
228228
1.1f);
229229
}
230+
231+
displayGameObjects.Remove(id);
230232
}
231233
var str = string.Join("\n", displayLayouts.Keys.Select(t => $"{t}: {displayLayouts[t]}"));
232234
Debug.Log($"OnDisplaysAvailable ({displayLayouts.Count}): displays=\n{str}\n{tableWidth} - {totalWidth}");
235+
236+
// remove non-updated game objects.
237+
foreach (var displayAuthoring in displayGameObjects.Values) {
238+
DestroyImmediate(displayAuthoring.gameObject);
239+
}
233240
}
234241

235242
private static int ConvertSeparatorType(PinMameDisplayType layoutType)

VisualPinball.Engine.PinMAME.Unity/Runtime/PinMameGamelogicEngine.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ private void UpdateDmd(int index, PinMameDisplayLayout displayLayout, IntPtr fra
195195
var pos = y * displayLayout.Width + x;
196196
if (!_dmdLevels[index].ContainsKey(ptr[pos])) {
197197
Logger.Error($"Display {index}: Provided levels ({BitConverter.ToString(_dmdLevels[index].Keys.ToArray())}) don't contain level {BitConverter.ToString(new[] {ptr[pos]})}.");
198-
_dmdLevels[index][ptr[pos]] = 0x0;
198+
_dmdLevels[index][ptr[pos]] = 0x4;
199199
}
200200
_frameBuffer[index][pos] = _dmdLevels[index][ptr[pos]];
201201
}

0 commit comments

Comments
 (0)