Fix reads of 3C6 on SDAC (Bahamas 64) when not returning command register or RAMDAC ID.
This commit is contained in:
parent
51c4a1455e
commit
aa933688eb
1 changed files with 3 additions and 4 deletions
|
|
@ -96,7 +96,6 @@ void sdac_ramdac_out(uint16_t addr, uint8_t val, sdac_ramdac_t *ramdac, svga_t *
|
||||||
|
|
||||||
uint8_t sdac_ramdac_in(uint16_t addr, sdac_ramdac_t *ramdac, svga_t *svga)
|
uint8_t sdac_ramdac_in(uint16_t addr, sdac_ramdac_t *ramdac, svga_t *svga)
|
||||||
{
|
{
|
||||||
uint8_t temp;
|
|
||||||
// /*if (CS!=0xC000) */pclog("IN RAMDAC %04X %04X:%04X %i %i %i\n",addr,CS,cpu_state.pc, ramdac->rs2, ramdac->rindex, ramdac->windex);
|
// /*if (CS!=0xC000) */pclog("IN RAMDAC %04X %04X:%04X %i %i %i\n",addr,CS,cpu_state.pc, ramdac->rs2, ramdac->rindex, ramdac->windex);
|
||||||
switch (addr)
|
switch (addr)
|
||||||
{
|
{
|
||||||
|
|
@ -105,15 +104,15 @@ uint8_t sdac_ramdac_in(uint16_t addr, sdac_ramdac_t *ramdac, svga_t *svga)
|
||||||
ramdac->magic_count++;
|
ramdac->magic_count++;
|
||||||
if (ramdac->magic_count == 4)
|
if (ramdac->magic_count == 4)
|
||||||
{
|
{
|
||||||
temp = 0x70; /*SDAC ID*/
|
|
||||||
ramdac->rs2 = 1;
|
ramdac->rs2 = 1;
|
||||||
|
return 0x70; /*SDAC ID*/
|
||||||
}
|
}
|
||||||
if (ramdac->magic_count == 5)
|
if (ramdac->magic_count == 5)
|
||||||
{
|
{
|
||||||
temp = ramdac->command;
|
|
||||||
ramdac->magic_count = 0;
|
ramdac->magic_count = 0;
|
||||||
|
return ramdac->command;
|
||||||
}
|
}
|
||||||
return temp;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
ramdac->magic_count=0;
|
ramdac->magic_count=0;
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue