Update of /cvsroot/vba/VisualBoyAdvance/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1315
Modified Files:
Gfx.h
Log Message:
Fixed the mosaic rendering.
Index: Gfx.h
===================================================================
RCS file: /cvsroot/vba/VisualBoyAdvance/src/Gfx.h,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** Gfx.h 20 Mar 2004 00:18:33 -0000 1.11
--- Gfx.h 29 Mar 2004 21:57:33 -0000 1.12
***************
*** 252,258 ****
}
if(mosaicOn) {
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; m < mosaicX; m++) {
! line[i] = line[i-1]; i++;
}
}
--- 252,264 ----
}
if(mosaicOn) {
! if(mosaicX > 1) {
! int m = 1;
! for(int i = 0; i < 239; i++) {
! line[i+1] = line[i];
! m++;
! if(m == mosaicX) {
! m = 1;
! i++;
! }
}
}
***************
*** 412,418 ****
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; m < mosaicX; m++) {
! line[i] = line[i-1]; i++;
}
}
--- 418,430 ----
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! if(mosaicX > 1) {
! int m = 1;
! for(int i = 0; i < 239; i++) {
! line[i+1] = line[i];
! m++;
! if(m == mosaicX) {
! m = 1;
! i++;
! }
}
}
***************
*** 503,509 ****
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; m < mosaicX; m++) {
! line[i] = line[i-1]; i++;
}
}
--- 515,527 ----
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! if(mosaicX > 1) {
! int m = 1;
! for(int i = 0; i < 239; i++) {
! line[i+1] = line[i];
! m++;
! if(m == mosaicX) {
! m = 1;
! i++;
! }
}
}
***************
*** 598,604 ****
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; m < mosaicX; m++) {
! line[i] = line[i-1]; i++;
}
}
--- 616,628 ----
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! if(mosaicX > 1) {
! int m = 1;
! for(int i = 0; i < 239; i++) {
! line[i+1] = line[i];
! m++;
! if(m == mosaicX) {
! m = 1;
! i++;
! }
}
}
***************
*** 691,697 ****
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! for(int i = 0; i < 240; i+=2) {
! for(int m = 1; m < mosaicX; m++) {
! line[i] = line[i-1]; i++;
}
}
--- 715,727 ----
if(control & 0x40) {
int mosaicX = (MOSAIC & 0xF) + 1;
! if(mosaicX > 1) {
! int m = 1;
! for(int i = 0; i < 239; i++) {
! line[i+1] = line[i];
! m++;
! if(m == mosaicX) {
! m = 1;
! i++;
! }
}
}
|