src/emu/video/saa5050.c
| r15774 | r15775 | |
| 214 | 214 | |
| 215 | 215 | for (sy = 0; sy <= saa5050->y; sy++) |
| 216 | 216 | { |
| 217 | bool dblhi = false; |
| 218 | |
| 217 | 219 | /* Set start of line state */ |
| 218 | 220 | saa5050->flags = 0; |
| 219 | 221 | saa5050->prvchr = 32; |
| r15774 | r15775 | |
| 265 | 267 | break; |
| 266 | 268 | case 0x0d: |
| 267 | 269 | saa5050->flags |= SAA5050_DBLHI; |
| 270 | dblhi = true; |
| 268 | 271 | break; |
| 269 | 272 | case 0x18: |
| 270 | 273 | saa5050->flags |= SAA5050_CONCEAL; |
| r15774 | r15775 | |
| 319 | 322 | { |
| 320 | 323 | if (saa5050->flags & SAA5050_DBLHI) |
| 321 | 324 | { |
| 322 | | drawgfxzoom_opaque(bitmap, cliprect, saa5050->screen->machine().gfx[saa5050->gfxnum + 1], code, colour, 0, 0, sx * 12, ssy * 20, 0x20000, 0x20000); |
| 323 | | drawgfxzoom_opaque(bitmap, cliprect, saa5050->screen->machine().gfx[saa5050->gfxnum + 2], code, colour, 0, 0, sx * 12, (ssy + 1) * 20, 0x20000, 0x20000); |
| 325 | drawgfxzoom_opaque(bitmap, cliprect, saa5050->screen->machine().gfx[saa5050->gfxnum + 1], code & 0x7f, colour, 0, 0, sx * 12, ssy * 20, 0x20000, 0x20000); |
| 326 | drawgfxzoom_opaque(bitmap, cliprect, saa5050->screen->machine().gfx[saa5050->gfxnum + 2], code & 0x7f, colour, 0, 0, sx * 12, (ssy + 1) * 20, 0x20000, 0x20000); |
| 324 | 327 | } |
| 325 | 328 | else |
| 326 | 329 | { |
| 327 | | drawgfxzoom_opaque(bitmap, cliprect, saa5050->screen->machine().gfx[saa5050->gfxnum + 0], code, colour, 0, 0, sx * 12, ssy * 20, 0x20000, 0x20000); |
| 330 | drawgfxzoom_opaque(bitmap, cliprect, saa5050->screen->machine().gfx[saa5050->gfxnum + 0], code & 0x7f, colour, 0, 0, sx * 12, ssy * 20, 0x20000, 0x20000); |
| 328 | 331 | } |
| 329 | 332 | } |
| 330 | 333 | } |
| 331 | 334 | |
| 332 | | if (saa5050->flags & SAA5050_DBLHI) |
| 335 | if (dblhi) |
| 333 | 336 | { |
| 334 | 337 | sy++; |
| 335 | | saa5050->flags &= ~SAA5050_DBLHI; |
| 336 | 338 | } |
| 337 | 339 | } |
| 338 | 340 | } |