diff options
author | Toad King | 2012-06-14 03:23:47 -0400 |
---|---|---|
committer | Toad King | 2012-06-14 03:23:47 -0400 |
commit | e8bad8c3ca33d6dfa672f2e570eddc3ab4b3a7e6 (patch) | |
tree | 3b5ee797171edafe59bc22ec1523554d81bc448e /src/rops.h | |
parent | 6fb0c7a7a53e1eba7a0f5dc5b1ade312a0d76119 (diff) | |
download | snes9x2002-e8bad8c3ca33d6dfa672f2e570eddc3ab4b3a7e6.tar.gz snes9x2002-e8bad8c3ca33d6dfa672f2e570eddc3ab4b3a7e6.tar.bz2 snes9x2002-e8bad8c3ca33d6dfa672f2e570eddc3ab4b3a7e6.zip |
initial libretro changes
Diffstat (limited to 'src/rops.h')
-rw-r--r-- | src/rops.h | 61 |
1 files changed, 31 insertions, 30 deletions
@@ -6,7 +6,7 @@ */ // ------------- -// RGB_565 +// RGB_555 // a.red = a.red - b.red // a.blue = a.blue - b.blue // a.green = a.green - b.green @@ -24,21 +24,21 @@ " biceq " #a ", " #a ", #0b01111100000000000 \n" */ #define ROP_SUB(a, b) \ - " bics " #b ", " #b ", #0b00000100000100000 \n"\ + " bics " #b ", " #b ", #0b00000010000100000 \n"\ " beq 999f \n"\ - " orr " #a ", " #a ", #0b00000100000100000 \n"\ + " orr " #a ", " #a ", #0b00000010000100000 \n"\ " orr " #a ", " #a ", #(1 << 31) \n"\ " subs " #a ", " #a ", " #b " \n"\ - " bicpl " #a ", " #a ", #0b01111100000000000 \n"\ + " bicpl " #a ", " #a ", #0b00111110000000000 \n"\ " tst " #a ", #0b00000000000100000 \n"\ " biceq " #a ", " #a ", #0b00000000000011111 \n"\ - " tst " #a ", #0b00000100000000000 \n"\ - " biceq " #a ", " #a ", #0b00000011111100000 \n"\ + " tst " #a ", #0b00000010000000000 \n"\ + " biceq " #a ", " #a ", #0b00000001111100000 \n"\ "999:\n" // ------------- -// RGB_565 +// RGB_555 // if ZF set do ROP_SUB, else: // a.red = (a.red - b.red) / 2 // a.blue = (a.blue - b.blue) / 2 @@ -64,60 +64,60 @@ #define ROP_SUB1_2(a, b) \ " movne " #a ", " #a ", lsr #1 \n"\ - " bicne " #a ", " #a ", #0b00000010000010000 \n"\ + " bicne " #a ", " #a ", #0b00000001000010000 \n"\ " movne " #b ", " #b ", lsr #1 \n"\ - " bicne " #b ", " #b ", #0b00000010000010000 \n"\ + " bicne " #b ", " #b ", #0b00000001000010000 \n"\ \ - " bics " #b ", " #b ", #0b00000100000100000 \n"\ + " bics " #b ", " #b ", #0b00000010000100000 \n"\ " beq 999f \n"\ - " orr " #a ", " #a ", #0b00000100000100000 \n"\ + " orr " #a ", " #a ", #0b00000010000100000 \n"\ " orr " #a ", " #a ", #(1 << 31) \n"\ " subs " #a ", " #a ", " #b " \n"\ - " bicpl " #a ", " #a ", #0b01111100000000000 \n"\ + " bicpl " #a ", " #a ", #0b00111110000000000 \n"\ " tst " #a ", #0b00000000000100000 \n"\ " biceq " #a ", " #a ", #0b00000000000011111 \n"\ - " tst " #a ", #0b00000100000000000 \n"\ - " biceq " #a ", " #a ", #0b00000011111100000 \n"\ + " tst " #a ", #0b00000010000000000 \n"\ + " biceq " #a ", " #a ", #0b00000001111100000 \n"\ "999:\n" // ------------- -// RGB_565 +// RGB_555 // a.red = a.red + b.red // a.blue = a.blue + b.blue // a.green = a.green + b.green #define ROP_ADD(a, b) \ - " bics " #b ", " #b ", #0b00000100000100000 \n"\ + " bics " #b ", " #b ", #0b00000010000100000 \n"\ " beq 999f \n"\ - " bic " #a ", " #a ", #0b00000100000100000 \n"\ + " bic " #a ", " #a ", #0b00000010000100000 \n"\ " add " #a ", " #a ", " #b " \n"\ " tst " #a ", #0b00000000000100000 \n"\ " orrne " #a ", " #a ", #0b00000000000011111 \n"\ - " tst " #a ", #0b00000100000000000 \n"\ - " orrne " #a ", " #a ", #0b00000011111100000 \n"\ - " tst " #a ", #0b10000000000000000 \n"\ - " orrne " #a ", " #a ", #0b01111100000000000 \n"\ + " tst " #a ", #0b00000010000000000 \n"\ + " orrne " #a ", " #a ", #0b00000001111100000 \n"\ + " tst " #a ", #0b01000000000000000 \n"\ + " orrne " #a ", " #a ", #0b00111110000000000 \n"\ "999:\n" // ------------- -// RGB_565 +// RGB_555 // if ZF set do ROP_ADD, else: // a.red = (a.red + b.red) / 2 // a.blue = (a.blue + b.blue) / 2 // a.green = (a.green + b.green) / 2 #define ROP_ADD1_2(a, b) \ - " bic " #a ", " #a ", #0b00000100000100000 \n"\ - " bicne " #a ", " #a ", #0b00001000001000000 \n"\ - " bic " #b ", " #b ", #0b00000100000100000 \n"\ - " bicne " #b ", " #b ", #0b00001000001000000 \n"\ + " bic " #a ", " #a ", #0b00000010000100000 \n"\ + " bicne " #a ", " #a ", #0b00000100001000000 \n"\ + " bic " #b ", " #b ", #0b00000010000100000 \n"\ + " bicne " #b ", " #b ", #0b00000100001000000 \n"\ " add " #a ", " #a ", " #b " \n"\ " movne " #a ", " #a ", lsr #1 \n"\ " tst " #a ", #0b00000000000100000 \n"\ " orrne " #a ", " #a ", #0b00000000000011111 \n"\ - " tst " #a ", #0b00000100000000000 \n"\ - " orrne " #a ", " #a ", #0b00000011111100000 \n"\ - " tst " #a ", #0b10000000000000000 \n"\ - " orrne " #a ", " #a ", #0b01111100000000000 \n" + " tst " #a ", #0b00000010000000000 \n"\ + " orrne " #a ", " #a ", #0b00000001111100000 \n"\ + " tst " #a ", #0b01000000000000000 \n"\ + " orrne " #a ", " #a ", #0b00111110000000000 \n" typedef struct { @@ -166,3 +166,4 @@ void doRaster(ROPSTRUCT *rop); bool wouldRasterAlterStatus(ROPSTRUCT *rop); #endif + |