Update of /cvsroot/vba/VisualBoyAdvance/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv350/src
Modified Files:
Gfx.h
Log Message:
Optimize mosaic logic.
Index: Gfx.h
===================================================================
RCS file: /cvsroot/vba/VisualBoyAdvance/src/Gfx.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** Gfx.h 15 Jun 2003 12:11:44 -0000 1.7
--- Gfx.h 16 Feb 2004 00:23:47 -0000 1.8
***************
*** 249,259 ****
}
if(mosaicOn) {
! int m = 0;
! for(int i = 0; i < 240; i++) {
! if(m)
! line[i] = line[i-1];
! m++;
! if(m == mosaicX)
! m = 0;
}
}
--- 249,256 ----
}
if(mosaicOn) {
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; i < mosaicX; m++) {
! line[i] = line[i-1]; i++;
! }
}
}
***************
*** 412,422 ****
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! int m = 0;
! for(int i = 0; i < 240; i++) {
! if(m)
! line[i] = line[i-1];
! m++;
! if(m == mosaicX)
! m = 0;
}
}
--- 409,416 ----
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; i < mosaicX; m++) {
! line[i] = line[i-1]; i++;
! }
}
}
***************
*** 506,516 ****
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! int m = 0;
! for(int i = 0; i < 240; i++) {
! if(m)
! line[i] = line[i-1];
! m++;
! if(m == mosaicX)
! m = 0;
}
}
--- 500,507 ----
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; i < mosaicX; m++) {
! line[i] = line[i-1]; i++;
! }
}
}
***************
*** 604,614 ****
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! int m = 0;
! for(int i = 0; i < 240; i++) {
! if(m)
! line[i] = line[i-1];
! m++;
! if(m == mosaicX)
! m = 0;
}
}
--- 595,602 ----
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; i < mosaicX; m++) {
! line[i] = line[i-1]; i++;
! }
}
}
***************
*** 700,710 ****
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! int m = 0;
! for(int i = 0; i < 240; i++) {
! if(m)
! line[i] = line[i-1];
! m++;
! if(m == mosaicX)
! m = 0;
}
}
--- 688,695 ----
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; i < mosaicX; m++) {
! line[i] = line[i-1]; i++;
! }
}
}
|