Compare commits

...
10 Commits
Author SHA1 Message Date
mahoneyt944 b972aeba83 Update segas32.c 2026-08-25 13:14:52 -04:00
mahoneyt944 716418c215 Update segas32.c 2026-08-25 13:06:39 -04:00
mahoneyt944 912a34b64e Update segas32.c 2026-08-25 12:37:36 -04:00
mahoneyt944 90d5a33681 Update segas32.c 2026-08-25 08:23:04 -04:00
mahoneyt944 e164949da3 Update segas32.c 2026-08-25 08:08:25 -04:00
mahoneyt944 56d7952a5e Add files via upload 2026-08-13 22:33:08 -04:00
mahoneyt944 80c5246de4 Update segas32.c 2026-08-13 18:06:07 -04:00
mahoneyt944 16730e5328 Update segas32.c 2026-08-13 12:52:36 -04:00
mahoneyt944 6a858ba734 Update .gitlab-ci.yml 2026-08-13 10:03:55 -04:00
mahoneyt944 64db01e359 Add files via upload 2026-08-13 10:02:28 -04:00
3 changed files with 19 additions and 21 deletions

No files matched your search

+1
View File
@@ -239,6 +239,7 @@ android-arm64-v8a:
- .core-defs
only:
- master
- Call2
# Android 64-bit x86
android-x86_64:
+17 -20
View File
@@ -473,35 +473,31 @@ static NVRAM_HANDLER( system32 )
static void update_irq_state(void)
{
UINT8 effirq = v60_irq_control[7] & ~v60_irq_control[6] & 0x1f;
int vector;
/* loop over interrupt vectors, finding the highest priority one with */
/* an unmasked interrupt pending */
for (vector = 0; vector < 5; vector++)
if (BIT(effirq, vector))
{
cpu_set_irq_line_and_vector(0, 0, ASSERT_LINE, vector);
break;
}
/* if we didn't find any, clear the interrupt line */
if (vector == 5)
cpu_set_irq_line(0, 0, CLEAR_LINE);
cpu_set_irq_line(0, 0, effirq ? ASSERT_LINE : CLEAR_LINE);
}
static void signal_v60_irq(int which)
{
int i;
/* see if this interrupt input is mapped to any vectors; if so, mark them */
for (i = 0; i < 5; i++)
if (v60_irq_control[i] == which)
v60_irq_control[7] |= 1 << i;
/* mark this source as pending */
if (which >= 0 && which < 5)
v60_irq_control[7] |= 1 << which;
update_irq_state();
}
static int segas32_irq_callback(int irqline)
{
UINT8 effirq = v60_irq_control[7] & ~v60_irq_control[6] & 0x1f;
int vector;
for (vector = 0; vector < 5; vector++)
if (BIT(effirq, vector))
return v60_irq_control[vector];
return 0;
}
static void int_control_w(int offset, UINT8 data)
{
int duration;
@@ -1164,6 +1160,7 @@ static MACHINE_INIT( segas32 )
/* clear IRQ lines */
cpu_set_irq_line(0, 0, CLEAR_LINE);
cpu_set_irq_callback(0, segas32_irq_callback);
}
/* Analog Input Handlers */
+1 -1
View File
@@ -297,7 +297,7 @@ static int32_t *prev_bgendx;
static int32_t *bgcolor_line;
/* sprite data */
static UINT8 sprite_render_count;
static UINT8 sprite_render_count = 0;
static UINT8 sprite_control_latched[8];
static UINT8 sprite_control[8];
static UINT32 *spriteram_32bit;