--- uae/src/blitter.c 2018/04/24 16:53:06 1.1.1.7 +++ uae/src/blitter.c 2018/04/24 17:05:48 1.1.1.11 @@ -15,12 +15,11 @@ #include "uae.h" #include "memory.h" #include "custom.h" -#include "readcpu.h" #include "newcpu.h" #include "blitter.h" #include "blit.h" -uae_u16 bltsize, oldvblts; +uae_u16 oldvblts; uae_u16 bltcon0,bltcon1; uae_u32 bltapt,bltbpt,bltcpt,bltdpt; @@ -111,7 +110,7 @@ static void blitter_dofast(void) uae_u32 preva = 0, prevb = 0; uaecptr dstp = 0; - /*if (!blitfill) fprintf(stderr, "minterm %x not present\n",mt); */ + /*if (!blitfill) write_log ("minterm %x not present\n",mt); */ for (j = 0; j < blt_info.vblitsize; j++) { blitfc = !!(bltcon1 & 0x4); for (i = 0; i < blt_info.hblitsize; i++) { @@ -198,7 +197,7 @@ static void blitter_dofast_desc(void) uae_u32 preva = 0, prevb = 0; uaecptr dstp = 0; -/* if (!blitfill) fprintf(stderr, "minterm %x not present\n",mt);*/ +/* if (!blitfill) write_log ("minterm %x not present\n",mt);*/ for (j = 0; j < blt_info.vblitsize; j++) { blitfc = !!(bltcon1 & 0x4); for (i = 0; i < blt_info.hblitsize; i++) { @@ -378,7 +377,7 @@ static void blit_init(void) blineb = (blt_info.bltbdat >> blt_info.blitbshift) | (blt_info.bltbdat << (16-blt_info.blitbshift)); #if 0 if (blineb != 0xFFFF && blineb != 0) - fprintf(stderr, "%x %x %d %x\n", blineb, blt_info.bltbdat, blt_info.blitbshift, bltcon1); + write_log ("%x %x %d %x\n", blineb, blt_info.bltbdat, blt_info.blitbshift, bltcon1); #endif blitsign = bltcon1 & 0x40; blitonedot = 0; @@ -425,15 +424,15 @@ void blitter_handler(void) { if (!dmaen(DMA_BLITTER)) { eventtab[ev_blitter].active = 1; - eventtab[ev_blitter].oldcycles = cycles; - eventtab[ev_blitter].evtime = 10 + cycles; /* wait a little */ + eventtab[ev_blitter].oldcycles = get_cycles (); + eventtab[ev_blitter].evtime = 10 * CYCLE_UNIT + get_cycles (); /* wait a little */ return; /* gotta come back later. */ } actually_do_blit(); INTREQ(0x8040); eventtab[ev_blitter].active = 0; - regs.spcflags &= ~SPCFLAG_BLTNASTY; + unset_special (SPCFLAG_BLTNASTY); } void do_blitter(void) @@ -456,16 +455,16 @@ void do_blitter(void) blit_init(); eventtab[ev_blitter].active = 1; - eventtab[ev_blitter].oldcycles = cycles; - eventtab[ev_blitter].evtime = blit_cycles + cycles; + eventtab[ev_blitter].oldcycles = get_cycles (); + eventtab[ev_blitter].evtime = blit_cycles * CYCLE_UNIT + get_cycles (); events_schedule(); - regs.spcflags &= ~SPCFLAG_BLTNASTY; + unset_special (SPCFLAG_BLTNASTY); if (dmaen(DMA_BLITPRI)) - regs.spcflags |= SPCFLAG_BLTNASTY; + set_special (SPCFLAG_BLTNASTY); } -void maybe_blit(void) +void maybe_blit (void) { static int warned = 0; if (bltstate == BLT_done) @@ -477,7 +476,5 @@ void maybe_blit(void) } if (!eventtab[ev_blitter].active) printf("FOO!!?\n"); - actually_do_blit(); - eventtab[ev_blitter].active = 0; - regs.spcflags &= ~SPCFLAG_BLTNASTY; + blitter_handler (); }