[Tuxnes-devel] Mid-scanline updates?
Brought to you by:
tmmm
From: Jim U. <ji...@3e...> - 2001-04-18 15:14:07
|
Do PPU updates made during a scanline take effect immediately? My understanding is no---they are either disallowed or delayed until hblank or vblank. I ask because if this is the case, I can optimize the rendering code in a way that is a huge win for the dreamcast. I also ask because my reading of the emulator code indicates that it accepts mid-scanline updates, and calls drawimage() immediately, but in all cases that I can see it delays any visible effect until hblank. For example, drawimage keeps a local static copy of hscrollreg in curhscroll and only synchronizes them during hblank. I am experimenting with writing eight pixels to the screen per loop iteration, rather than one, and also combining two 16-bit pixels into one 32-bit write. As I mentioned this provides a big speedup on the dc. However the code becomes more complicated if you don't start on an eight-pixel boundary, or write fewer than eight pixels. To solve this I need to make additional changes to the code, which will result in most mid-scanline updates being delayed (although mmc2_4_latch will still work). But I don't want to make these changes if it will break a large number of games and I can't find a workaround. Jim -- "You can eat if you want to; that's your prerogative... I used to play that game... I know what it's like... But I'm just not interested in it any more... I'm not interested in going out, and working for the money to buy the food, then shopping for it, then going home and preparing it, then eating it, then washing the dishes, then just letting it all out in the toilet... and in the end, you end up in a box, in the ground, on the outside of town." -- breatharian.com ji...@3e... / 0x43340710 / 517B C658 D2CB 260D 3E1F 5ED1 6DB3 FBB9 4334 0710 |