Minor changes

This commit is contained in:
Altheos
2018-11-30 14:32:41 +01:00
parent 6854dd9000
commit 06861bece0
3 changed files with 989 additions and 971 deletions

View File

@@ -223,13 +223,15 @@ midi_update_int_status(gus_t *dev)
if ((dev->midi_ctrl & MIDI_CTRL_TRANSMIT_MASK) == MIDI_CTRL_TRANSMIT && (dev->midi_status & MIDI_INT_TRANSMIT)) {
dev->midi_status |= MIDI_INT_MASTER;
dev->irqstatus |= GUS_INT_MIDI_TRANSMIT;
} else
}
else
dev->irqstatus &= ~GUS_INT_MIDI_TRANSMIT;
if ((dev->midi_ctrl & MIDI_CTRL_RECEIVE) && (dev->midi_status & MIDI_INT_RECEIVE)) {
dev->midi_status |= MIDI_INT_MASTER;
dev->irqstatus |= GUS_INT_MIDI_RECEIVE;
} else
}
else
dev->irqstatus &= ~GUS_INT_MIDI_RECEIVE;
if ((dev->midi_status & MIDI_INT_MASTER) && (dev->irq_midi != -1)) {
@@ -264,7 +266,8 @@ gus_write(uint16_t addr, uint8_t val, void *priv)
if (dev->midi_loopback) {
dev->midi_status |= MIDI_INT_RECEIVE;
dev->midi_data = val;
} else
}
else
dev->midi_status |= MIDI_INT_TRANSMIT;
break;
@@ -438,7 +441,8 @@ gus_write(uint16_t addr, uint8_t val, void *priv)
dma_result = dma_channel_write(dev->dma, d);
if (dma_result == DMA_NODATA)
break;
} else {
}
else {
d = dev->ram[dev->dmaaddr];
if (val & 0x80)
d ^= 0x80;
@@ -455,7 +459,8 @@ gus_write(uint16_t addr, uint8_t val, void *priv)
dev->dmactrl = val & ~0x40;
if (val & 0x20)
dev->irqnext = 1;
} else {
}
else {
c = 0;
while (c < 65536) {
d = dma_channel_read(dev->dma);
@@ -467,7 +472,8 @@ gus_write(uint16_t addr, uint8_t val, void *priv)
d ^= 0x8080;
dev->ram[gus_addr] = d & 0xff;
dev->ram[gus_addr + 1] = (d >> 8) & 0xff;
} else {
}
else {
if (val & 0x80)
d ^= 0x80;
dev->ram[dev->dmaaddr] = d;
@@ -548,10 +554,12 @@ gus_write(uint16_t addr, uint8_t val, void *priv)
else if (dev->irq != -1)
picint(1 << dev->irq);
}
} else if (!(dev->tctrl & GUS_TIMER_CTRL_AUTO) && dev->adcommand == 4) {
}
else if (!(dev->tctrl & GUS_TIMER_CTRL_AUTO) && dev->adcommand == 4) {
if (val & 0x80) {
dev->ad_status &= ~0x60;
} else {
}
else {
dev->ad_timer_ctrl = val;
if (val & 0x01)
@@ -588,7 +596,8 @@ gus_write(uint16_t addr, uint8_t val, void *priv)
dev->irq = dev->irq_midi = gus_irqs[(val >> 3) & 7];
else
dev->irq_midi = dev->irq;
} else
}
else
dev->irq_midi = gus_irqs_midi[(val >> 3) & 7];
#if defined(DEV_BRANCH) && defined(USE_GUSMAX)
cs423x_setirq(&dev->cs423x, dev->irq);
@@ -1008,14 +1017,17 @@ poll_wave(void *priv)
vl = (int16_t)(int8_t)((dev->ram[(addr + 1) & 0xFFFFF] ^ 0x80) - 0x80) * (511 - (dev->cur[d] & 511));
vl += (int16_t)(int8_t)((dev->ram[(addr + 3) & 0xFFFFF] ^ 0x80) - 0x80) * (dev->cur[d] & 511);
v = vl >> 9;
} else
}
else
v = (int16_t)(int8_t)((dev->ram[(addr + 1) & 0xFFFFF] ^ 0x80) - 0x80);
} else {
}
else {
if (!(dev->freq[d] >> 10)) { /*Interpolate*/
vl = ((int8_t)((dev->ram[(dev->cur[d] >> 9) & 0xFFFFF] ^ 0x80) - 0x80)) * (511 - (dev->cur[d] & 511));
vl += ((int8_t)((dev->ram[((dev->cur[d] >> 9) + 1) & 0xFFFFF] ^ 0x80) - 0x80)) * (dev->cur[d] & 511);
v = vl >> 9;
} else
}
else
v = (int16_t)(int8_t)((dev->ram[(dev->cur[d] >> 9) & 0xFFFFF] ^ 0x80) - 0x80);
}
@@ -1036,7 +1048,8 @@ poll_wave(void *priv)
if (dev->ctrl[d] & 0x10)
dev->ctrl[d] ^= 0x40;
dev->cur[d] = (dev->ctrl[d] & 0x40) ? (dev->end[d] - diff) : (dev->start[d] + diff);
} else if (! (dev->rctrl[d] & 4)) {
}
else if (!(dev->rctrl[d] & 4)) {
dev->ctrl[d] |= 1;
dev->cur[d] = (dev->ctrl[d] & 0x40) ? dev->end[d] : dev->start[d];
}
@@ -1046,7 +1059,8 @@ poll_wave(void *priv)
update_irqs = 1;
}
}
} else {
}
else {
dev->cur[d] += (dev->freq[d] >> 1);
if (dev->cur[d] >= dev->end[d]) {
@@ -1056,7 +1070,8 @@ poll_wave(void *priv)
if (dev->ctrl[d] & 0x10)
dev->ctrl[d] ^= 0x40;
dev->cur[d] = (dev->ctrl[d] & 0x40) ? (dev->end[d] - diff) : (dev->start[d] + diff);
} else if (! (dev->rctrl[d] & 4)) {
}
else if (!(dev->rctrl[d] & 4)) {
dev->ctrl[d] |= 1;
dev->cur[d] = (dev->ctrl[d] & 0x40) ? dev->end[d] : dev->start[d];
}
@@ -1078,7 +1093,8 @@ poll_wave(void *priv)
if (!(dev->rctrl[d] & 8)) {
dev->rctrl[d] |= 1;
dev->rcur[d] = (dev->rctrl[d] & 0x40) ? dev->rstart[d] : dev->rend[d];
} else {
}
else {
if (dev->rctrl[d] & 0x10)
dev->rctrl[d] ^= 0x40;
dev->rcur[d] = (dev->rctrl[d] & 0x40) ? (dev->rend[d] - diff) : (dev->rstart[d] + diff);
@@ -1089,7 +1105,8 @@ poll_wave(void *priv)
update_irqs = 1;
}
}
} else {
}
else {
dev->rcur[d] += dev->rfreq[d];
if (dev->rcur[d] >= dev->rend[d]) {
int diff = dev->rcur[d] - dev->rend[d];
@@ -1097,7 +1114,8 @@ poll_wave(void *priv)
if (!(dev->rctrl[d] & 8)) {
dev->rctrl[d] |= 1;
dev->rcur[d] = (dev->rctrl[d] & 0x40) ? dev->rstart[d] : dev->rend[d];
} else {
}
else {
if (dev->rctrl[d] & 0x10)
dev->rctrl[d] ^= 0x40;
dev->rcur[d] = (dev->rctrl[d] & 0x40) ? (dev->rend[d] - diff) : (dev->rstart[d] + diff);