notaz.gp2x.de
/
picodrive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
update for recent /gp2x changes
[picodrive.git]
/
pico
/
draw.c
diff --git
a/pico/draw.c
b/pico/draw.c
index
b915514
..
9b9ce91
100644
(file)
--- a/
pico/draw.c
+++ b/
pico/draw.c
@@
-17,6
+17,13
@@
* "sonic mode" is autodetected, shadow/hilight is enabled by emulated game.
\r
* AS is enabled by user and takes priority over "sonic mode".
\r
*
\r
* "sonic mode" is autodetected, shadow/hilight is enabled by emulated game.
\r
* AS is enabled by user and takes priority over "sonic mode".
\r
*
\r
+ * since renderer always draws line in 8bit mode, there are 2 spare bits:
\r
+ * b \ mode: s/h as sonic
\r
+ * 00 normal - -
\r
+ * 01 shadow - pal index
\r
+ * 10 hilight+op spr spr pal index
\r
+ * 11 shadow +op spr - pal index
\r
+ *
\r
* not handled properly:
\r
* - hilight op on shadow tile
\r
* - AS + s/h (s/h sprite flag interferes with and cleared by AS code)
\r
* not handled properly:
\r
* - hilight op on shadow tile
\r
* - AS + s/h (s/h sprite flag interferes with and cleared by AS code)
\r
@@
-505,8
+512,8
@@
static void DrawWindow(int tstart, int tend, int prio, int sh) // int *hcache
\r
if (prio) {
\r
int *zb = (int *)(HighCol+8+(tilex<<3));
\r
\r
if (prio) {
\r
int *zb = (int *)(HighCol+8+(tilex<<3));
\r
- *zb++ &= 0x
3f3f3f3
f;
\r
- *zb &= 0x
3f3f3f3
f;
\r
+ *zb++ &= 0x
bfbfbfb
f;
\r
+ *zb &= 0x
bfbfbfb
f;
\r
} else {
\r
pal |= 0x40;
\r
}
\r
} else {
\r
pal |= 0x40;
\r
}
\r
@@
-925,10
+932,11
@@
static void DrawSpritesHiAS(unsigned char *sprited, int sh)
\r
/* nasty 1: remove 'sprite' flags */
\r
{
\r
\r
/* nasty 1: remove 'sprite' flags */
\r
{
\r
- int c = 320/4, *zb = (int *)(HighCol+8);
\r
+ int c = 320/4
/4
, *zb = (int *)(HighCol+8);
\r
while (c--)
\r
{
\r
while (c--)
\r
{
\r
- *zb++ &= 0x7f7f7f7f;
\r
+ *zb++ &= 0x7f7f7f7f; *zb++ &= 0x7f7f7f7f;
\r
+ *zb++ &= 0x7f7f7f7f; *zb++ &= 0x7f7f7f7f;
\r
}
\r
}
\r
\r
}
\r
}
\r
\r