diff options
author | MooglyGuy <therealmogminer@gmail.com> | 2019-08-26 19:58:00 +0200 |
---|---|---|
committer | MooglyGuy <therealmogminer@gmail.com> | 2019-08-26 19:58:18 +0200 |
commit | 1cfe376e69b88516636061d79abe969531e59508 (patch) | |
tree | a5538c4e2e0d81eeaad0bf2f69e7c9a17fa921d6 | |
parent | 373e58638095cdbe926121cfa63a11c9dce459d6 (diff) |
-newport: Fixed inverted-Y pixel readback. Fixes crash in Alias PowerAnimator 7.5. [Ryan Holtz]
-rw-r--r-- | src/devices/bus/gio64/newport.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/devices/bus/gio64/newport.cpp b/src/devices/bus/gio64/newport.cpp index 2a35437a4b0..9828090f018 100644 --- a/src/devices/bus/gio64/newport.cpp +++ b/src/devices/bus/gio64/newport.cpp @@ -47,7 +47,7 @@ #define LOG_REJECTS (1 << 9) #define LOG_ALL (LOG_UNKNOWN | LOG_VC2 | LOG_CMAP | LOG_XMAP | LOG_REX3 | LOG_RAMDAC | LOG_COMMANDS | LOG_REJECTS) -#define VERBOSE (LOG_REX3 | LOG_CMAP | LOG_XMAP | LOG_COMMANDS) +#define VERBOSE (0) #include "logmacro.h" DEFINE_DEVICE_TYPE(XMAP9, xmap9_device, "xmap9", "SGI XMAP9") @@ -2925,9 +2925,10 @@ uint32_t newport_base_device::do_pixel_read() } LOGMASKED(LOG_COMMANDS, "Read %08x from %04x, %04x\n", ret, src_x, src_y); m_rex3.m_x_start_i++; + int16_t dy = (m_rex3.m_y_end_i < m_rex3.m_y_start_i) ? -1 : 1; if (m_rex3.m_x_start_i > m_rex3.m_x_end_i) { - m_rex3.m_y_start_i++; + m_rex3.m_y_start_i += dy; m_rex3.m_x_start_i = m_rex3.m_x_save; } |