diff --git a/src/burn/drv/pst90s/d_ssv.cpp b/src/burn/drv/pst90s/d_ssv.cpp index 96ada4ec4..006041424 100644 --- a/src/burn/drv/pst90s/d_ssv.cpp +++ b/src/burn/drv/pst90s/d_ssv.cpp @@ -588,10 +588,6 @@ static struct BurnInputInfo EaglshotInputList[] = { {"P1 Button 2", BIT_DIGITAL, DrvJoy1 + 2, "p1 fire 2" }, {"P1 Button 3", BIT_DIGITAL, DrvJoy1 + 1, "p1 fire 3" }, - // placeholder for analog inputs - {"P1 Button 4", BIT_DIGITAL, DrvJoy3 + 5, "p1 fire 4" }, - {"P1 Button 5", BIT_DIGITAL, DrvJoy3 + 6, "p1 fire 5" }, - {"P2 Coin", BIT_DIGITAL, DrvJoy3 + 1, "p2 coin" }, {"P2 Start", BIT_DIGITAL, DrvJoy2 + 0, "p2 start" }, {"P2 Up", BIT_DIGITAL, DrvJoy2 + 7, "p2 up" }, @@ -1935,65 +1931,65 @@ STDDIPINFO(Jsk) static struct BurnDIPInfo EaglshotDIPList[]= { - {0x17, 0xff, 0xff, 0xdf, NULL }, - {0x18, 0xff, 0xff, 0xff, NULL }, + {0x15, 0xff, 0xff, 0xdf, NULL }, + {0x16, 0xff, 0xff, 0xff, NULL }, {0 , 0xfe, 0 , 16, "Coinage" }, - {0x17, 0x01, 0x0f, 0x07, "4 Coins 1 Credits" }, - {0x17, 0x01, 0x0f, 0x08, "3 Coins 1 Credits" }, - {0x17, 0x01, 0x0f, 0x09, "2 Coins 1 Credits" }, - {0x17, 0x01, 0x0f, 0x0f, "1 Coin 1 Credits" }, - {0x17, 0x01, 0x0f, 0x06, "2 Coins 3 Credits" }, - {0x17, 0x01, 0x0f, 0x0e, "1 Coin 2 Credits" }, - {0x17, 0x01, 0x0f, 0x0d, "1 Coin 3 Credits" }, - {0x17, 0x01, 0x0f, 0x0c, "1 Coin 4 Credits" }, - {0x17, 0x01, 0x0f, 0x0b, "1 Coin 5 Credits" }, - {0x17, 0x01, 0x0f, 0x0a, "1 Coin 6 Credits" }, - {0x17, 0x01, 0x0f, 0x05, "Multiple Coin Feature A" }, - {0x17, 0x01, 0x0f, 0x04, "Multiple Coin Feature B" }, - {0x17, 0x01, 0x0f, 0x03, "Multiple Coin Feature C" }, - {0x17, 0x01, 0x0f, 0x02, "Multiple Coin Feature D" }, - {0x17, 0x01, 0x0f, 0x01, "Multiple Coin Feature E" }, - {0x17, 0x01, 0x0f, 0x00, "Free Play" }, + {0x15, 0x01, 0x0f, 0x07, "4 Coins 1 Credits" }, + {0x15, 0x01, 0x0f, 0x08, "3 Coins 1 Credits" }, + {0x15, 0x01, 0x0f, 0x09, "2 Coins 1 Credits" }, + {0x15, 0x01, 0x0f, 0x0f, "1 Coin 1 Credits" }, + {0x15, 0x01, 0x0f, 0x06, "2 Coins 3 Credits" }, + {0x15, 0x01, 0x0f, 0x0e, "1 Coin 2 Credits" }, + {0x15, 0x01, 0x0f, 0x0d, "1 Coin 3 Credits" }, + {0x15, 0x01, 0x0f, 0x0c, "1 Coin 4 Credits" }, + {0x15, 0x01, 0x0f, 0x0b, "1 Coin 5 Credits" }, + {0x15, 0x01, 0x0f, 0x0a, "1 Coin 6 Credits" }, + {0x15, 0x01, 0x0f, 0x05, "Multiple Coin Feature A" }, + {0x15, 0x01, 0x0f, 0x04, "Multiple Coin Feature B" }, + {0x15, 0x01, 0x0f, 0x03, "Multiple Coin Feature C" }, + {0x15, 0x01, 0x0f, 0x02, "Multiple Coin Feature D" }, + {0x15, 0x01, 0x0f, 0x01, "Multiple Coin Feature E" }, + {0x15, 0x01, 0x0f, 0x00, "Free Play" }, {0 , 0xfe, 0 , 2, "Credits To Start" }, - {0x17, 0x01, 0x10, 0x10, "1" }, - {0x17, 0x01, 0x10, 0x00, "2" }, + {0x15, 0x01, 0x10, 0x10, "1" }, + {0x15, 0x01, 0x10, 0x00, "2" }, {0 , 0xfe, 0 , 2, "Controls" }, - {0x17, 0x01, 0x20, 0x20, "Trackball" }, - {0x17, 0x01, 0x20, 0x00, "Joystick" }, + {0x15, 0x01, 0x20, 0x20, "Trackball" }, + {0x15, 0x01, 0x20, 0x00, "Joystick" }, {0 , 0xfe, 0 , 2, "Trackball Type" }, - {0x17, 0x01, 0x40, 0x40, "24 Counts (USA)" }, - {0x17, 0x01, 0x40, 0x00, "12 Counts (Japan)" }, + {0x15, 0x01, 0x40, 0x40, "24 Counts (USA)" }, + {0x15, 0x01, 0x40, 0x00, "12 Counts (Japan)" }, {0 , 0xfe, 0 , 4, "Number Of Holes" }, - {0x18, 0x01, 0x03, 0x02, "2" }, - {0x18, 0x01, 0x03, 0x03, "3" }, - {0x18, 0x01, 0x03, 0x01, "4" }, - {0x18, 0x01, 0x03, 0x00, "5" }, + {0x16, 0x01, 0x03, 0x02, "2" }, + {0x16, 0x01, 0x03, 0x03, "3" }, + {0x16, 0x01, 0x03, 0x01, "4" }, + {0x16, 0x01, 0x03, 0x00, "5" }, {0 , 0xfe, 0 , 3, "Difficulty" }, - {0x18, 0x01, 0x0c, 0x08, "Easy" }, - {0x18, 0x01, 0x0c, 0x0c, "Normal" }, - {0x18, 0x01, 0x0c, 0x04, "Hard" }, + {0x16, 0x01, 0x0c, 0x08, "Easy" }, + {0x16, 0x01, 0x0c, 0x0c, "Normal" }, + {0x16, 0x01, 0x0c, 0x04, "Hard" }, {0 , 0xfe, 0 , 2, "Demo Sounds" }, - {0x18, 0x01, 0x10, 0x00, "Off" }, - {0x18, 0x01, 0x10, 0x10, "On" }, + {0x16, 0x01, 0x10, 0x00, "Off" }, + {0x16, 0x01, 0x10, 0x10, "On" }, {0 , 0xfe, 0 , 2, "Allow Continue" }, - {0x18, 0x01, 0x20, 0x00, "Off" }, - {0x18, 0x01, 0x20, 0x20, "On" }, + {0x16, 0x01, 0x20, 0x00, "Off" }, + {0x16, 0x01, 0x20, 0x20, "On" }, {0 , 0xfe, 0 , 2, "Flip Screen" }, - {0x18, 0x01, 0x40, 0x40, "Off" }, - {0x18, 0x01, 0x40, 0x00, "On" }, + {0x16, 0x01, 0x40, 0x40, "Off" }, + {0x16, 0x01, 0x40, 0x00, "On" }, {0 , 0xfe, 0 , 2, "Service Mode" }, - {0x18, 0x01, 0x80, 0x80, "Off" }, - {0x18, 0x01, 0x80, 0x00, "On" }, + {0x16, 0x01, 0x80, 0x80, "Off" }, + {0x16, 0x01, 0x80, 0x00, "On" }, }; STDDIPINFO(Eaglshot) @@ -3350,8 +3346,19 @@ static void draw_row(int sx, int sy, int scroll) color = attr; - /* Select 256 or 64 color tiles */ - gfx = ((mode & 0x0100) ? 0x100 : 0x40); + /* Select tile pen mask */ + gfx = 0x00; + + switch ((mode & 0x0700) >> 8) { + case 0x07: gfx = 0xff+1; break; + case 0x06: gfx = 0x3f+1; break; + case 0x05: gfx = 0xff+1; break; + case 0x04: gfx = 0x0f+1; break; + case 0x03: gfx = 0xff+1; break; + case 0x02: gfx = 0x3f+1; break; + case 0x01: gfx = 0xff+1; break; + case 0x00: gfx = 0x3f+1; break; + } /* Force 16x16 tiles ? */ if (flipx) { xstart = 1-1; xend = -1; xinc = -1; } @@ -3496,9 +3503,20 @@ static void draw_sprites() color = attr; - /* Select 256 or 64 color tiles */ - gfx = ((depth & 0x1000) ? 0x100 : 0x40); + /* Select tile pen mask */ shadow = (depth & 0x8000); + gfx = 0x00; + + switch ((depth & 0x7000) >> 12) { + case 0x07: gfx = 0xff+1; break; + case 0x06: gfx = 0x3f+1; break; + case 0x05: gfx = 0xff+1; break; + case 0x04: gfx = 0x0f+1; break; + case 0x03: gfx = 0xff+1; break; + case 0x02: gfx = 0x3f+1; break; + case 0x01: gfx = 0xff+1; break; + case 0x00: gfx = 0x3f+1; break; + } /* Single-sprite tile size */ xnum = 1 << (xnum >> 10); // 1, 2, 4 or 8 tiles