Commit graph

6 commits

Author SHA1 Message Date
Nebuleon Fumika
8956d5cff2 Clean up some backslashes at the end of lines. 2012-12-30 15:30:14 -05:00
Nebuleon Fumika
d1d0c81af8 Rendering optimisations.
tile.cpp: Optimise the common case of drawing an unclipped but possibly flipped 8x8 tile. Instead of calling WRITE_4PIXELS16 16 times, each performing setup and teardown, move the loop into DrawTile16.

tile.h, tile.cpp, gfx.h, gfx.cpp: End the use of global variable GFX.ScreenColors to pass around the current frame's palette. This saves on memory stores/loads.
2012-12-30 00:20:45 -05:00
Nebuleon Fumika
e5a0c9146a Transform macros into loops to render tiles.
At -O3 these get unrolled; at -Os they become shorter code, fitting into the cache with other code.
2012-12-28 22:19:23 -05:00
Nebuleon Fumika
6b36e79013 Speed up rendering by an unknown amount.
gfx.cpp, others: Avoid always checking for Settings.SixteenBit if FOREVER_16_BIT is defined.

port.h: Define FOREVER_16_BIT below PIXEL_FORMAT.
2012-12-27 18:02:03 -05:00
Nebuleon Fumika
e708c127fa Un-inline a bunch of stuff.
With the MIPS instruction cache, this means that two consecutive SNES CPU instructions using e.g. the same addressing style or the same opcode have a chance that the second one will use the first one's code and that it will be cached.
2012-12-18 22:53:49 -05:00
Kitty Draper
d40ae99422 first commit 2011-03-05 21:39:25 -05:00