Diff for /xmil/vram/make24.c between versions 1.5 and 1.6

version 1.5, 2004/08/18 09:17:56 version 1.6, 2005/02/04 06:42:12
Line 33  const UINT8 *src; Line 33  const UINT8 *src;
         do {          do {
                 x = makescrn.surfcx;                  x = makescrn.surfcx;
                 do {                  do {
                         udtmp = updatetmp[pos];                          udtmp = TRAMUPDATE(pos);
                         dirty = udtmp & makescrn.dispflag;                          dirty = udtmp & makescrn.dispflag;
                         if (dirty) {                          if (dirty) {
                                 updatetmp[pos] = (UINT8)(udtmp ^ dirty);                                  TRAMUPDATE(pos) = (UINT8)(udtmp ^ dirty);
                                 newline = TRUE;                                  newline = TRUE;
                                 if (dirty & UPDATE_TRAM) {                                  if (dirty & UPDATE_TRAM) {
                                         ZeroMemory(work, sizeof(work));                                          ZeroMemory(work, sizeof(work));
Line 46  const UINT8 *src; Line 46  const UINT8 *src;
                                                                                         work + MAKETEXT_STEP, fontcy);                                                                                          work + MAKETEXT_STEP, fontcy);
                                 }                                  }
                                 if (dirty & UPDATE_VRAM) {                                  if (dirty & UPDATE_VRAM) {
                                         src = makescrn.disp1 + (pos << 5);                                          src = makescrn.disp1 + TRAM2GRAM(pos);
                                         makemix_mixgrph(dst, SURFACE_WIDTH * 2, src, fontcy);                                          makemix_mixgrph(dst, SURFACE_WIDTH * 2, src, fontcy);
                                         makemix_mixgrph(dst + SURFACE_WIDTH, SURFACE_WIDTH * 2,                                          makemix_mixgrph(dst + SURFACE_WIDTH, SURFACE_WIDTH * 2,
                                                                                                                         src, fontcy);                                                                                                                          src, fontcy);
Line 60  const UINT8 *src; Line 60  const UINT8 *src;
                 } while(--x);                  } while(--x);
   
                 pos = LOW11(pos + makescrn.surfrx);                  pos = LOW11(pos + makescrn.surfrx);
                 if (updatetmp[LOW11(pos - 1)] & 4) {                    // 縦倍角描画だったら                  if (TRAMUPDATE(LOW11(pos - 1)) & 4) {                   // 縦倍角描画だったら
                         makescrn.fontycnt += makescrn.charcy;                          makescrn.fontycnt += makescrn.charcy;
                 }                  }
                 else {                  else {
Line 103  const UINT8 *src; Line 103  const UINT8 *src;
         do {          do {
                 x = makescrn.surfcx;                  x = makescrn.surfcx;
                 do {                  do {
                         udtmp = updatetmp[pos];                          udtmp = TRAMUPDATE(pos);
                         if (udtmp & UPDATE_TVRAM) {                          if (udtmp & UPDATE_TVRAM) {
                                 updatetmp[pos] = (UINT8)(udtmp & (~UPDATE_TVRAM));                                  TRAMUPDATE(pos) = (UINT8)(udtmp & (~UPDATE_TVRAM));
                                 newline = TRUE;                                  newline = TRUE;
                                 if (udtmp & UPDATE_TRAM) {                                  if (udtmp & UPDATE_TRAM) {
                                         ZeroMemory(work, sizeof(work));                                          ZeroMemory(work, sizeof(work));
Line 115  const UINT8 *src; Line 115  const UINT8 *src;
                                         makemix_mixtext(dst + SURFACE_WIDTH * 1, SURFACE_WIDTH * 2,                                          makemix_mixtext(dst + SURFACE_WIDTH * 1, SURFACE_WIDTH * 2,
                                                                                                 work + MAKETEXT_STEP, fontcy);                                                                                                  work + MAKETEXT_STEP, fontcy);
                                 }                                  }
                                 src = gram + (pos << 5);                                  src = gram + TRAM2GRAM(pos);
                                 if (udtmp & UPDATE_VRAM0) {                                  if (udtmp & UPDATE_VRAM0) {
                                         makemix_mixgrph(dst + SURFACE_WIDTH * 0, SURFACE_WIDTH * 2,                                          makemix_mixgrph(dst + SURFACE_WIDTH * 0, SURFACE_WIDTH * 2,
                                                                                                 src + GRAM_BANK0, fontcy);                                                                                                  src + GRAM_BANK0, fontcy);
Line 133  const UINT8 *src; Line 133  const UINT8 *src;
                 } while(--x);                  } while(--x);
   
                 pos = LOW11(pos + makescrn.surfrx);                  pos = LOW11(pos + makescrn.surfrx);
                 if (updatetmp[LOW11(pos - 1)] & 4) {                    // 縦倍角描画だったら                  if (TRAMUPDATE(LOW11(pos - 1)) & 4) {                   // 縦倍角描画だったら
                         makescrn.fontycnt += makescrn.charcy;                          makescrn.fontycnt += makescrn.charcy;
                 }                  }
                 else {                  else {
Line 177  const UINT8 *src; Line 177  const UINT8 *src;
         do {          do {
                 x = makescrn.surfcx;                  x = makescrn.surfcx;
                 do {                  do {
                         udtmp = updatetmp[pos];                          udtmp = TRAMUPDATE(pos);
                         dirty = udtmp & makescrn.dispflag;                          dirty = udtmp & makescrn.dispflag;
                         if (dirty) {                          if (dirty) {
                                 updatetmp[pos] = (UINT8)(udtmp ^ dirty);                                  TRAMUPDATE(pos) = (UINT8)(udtmp ^ dirty);
                                 newline = TRUE;                                  newline = TRUE;
                                 if (dirty & UPDATE_TRAM) {                                  if (dirty & UPDATE_TRAM) {
                                         ZeroMemory(work, sizeof(work));                                          ZeroMemory(work, sizeof(work));
Line 190  const UINT8 *src; Line 190  const UINT8 *src;
                                                                                         work + MAKETEXT_STEP, fontcy);                                                                                          work + MAKETEXT_STEP, fontcy);
                                 }                                  }
                                 if (dirty & UPDATE_VRAM) {                                  if (dirty & UPDATE_VRAM) {
                                         src = makescrn.disp1 + (LOW10(pos) << 5);                                          src = makescrn.disp1 + TRAM2GRAM(LOW10(pos));
                                         makemix_mixgrph(dst, SURFACE_WIDTH * 4, src, fontcy);                                          makemix_mixgrph(dst, SURFACE_WIDTH * 4, src, fontcy);
                                         makemix_mixgrph(dst + SURFACE_WIDTH * 2, SURFACE_WIDTH * 4,                                          makemix_mixgrph(dst + SURFACE_WIDTH * 2, SURFACE_WIDTH * 4,
                                                                                         src + GRAM_HALFSTEP, fontcy);                                                                                          src + GRAM_HALFSTEP, fontcy);
Line 205  const UINT8 *src; Line 205  const UINT8 *src;
                 } while(--x);                  } while(--x);
   
                 pos = LOW11(pos + makescrn.surfrx);                  pos = LOW11(pos + makescrn.surfrx);
                 if (updatetmp[LOW11(pos - 1)] & 4) {                    // 縦倍角描画だったら                  if (TRAMUPDATE(LOW11(pos - 1)) & 4) {                   // 縦倍角描画だったら
                         makescrn.fontycnt += makescrn.charcy;                          makescrn.fontycnt += makescrn.charcy;
                 }                  }
                 else {                  else {
Line 248  const UINT8 *src; Line 248  const UINT8 *src;
         do {          do {
                 x = makescrn.surfcx;                  x = makescrn.surfcx;
                 do {                  do {
                         udtmp = updatetmp[pos];                          udtmp = TRAMUPDATE(pos);
                         if (udtmp & UPDATE_TVRAM) {                          if (udtmp & UPDATE_TVRAM) {
                                 updatetmp[pos] = (UINT8)(udtmp & (~UPDATE_TVRAM));                                  TRAMUPDATE(pos) = (UINT8)(udtmp & (~UPDATE_TVRAM));
                                 newline = TRUE;                                  newline = TRUE;
                                 if (udtmp & UPDATE_TRAM) {                                  if (udtmp & UPDATE_TRAM) {
                                         ZeroMemory(work, sizeof(work));                                          ZeroMemory(work, sizeof(work));
Line 264  const UINT8 *src; Line 264  const UINT8 *src;
                                         makemix_mixtext(dst + SURFACE_WIDTH * 3, SURFACE_WIDTH * 4,                                          makemix_mixtext(dst + SURFACE_WIDTH * 3, SURFACE_WIDTH * 4,
                                                                                         work + MAKETEXT_STEP, fontcy);                                                                                          work + MAKETEXT_STEP, fontcy);
                                 }                                  }
                                 src = gram + (LOW10(pos) << 5);                                  src = gram + TRAM2GRAM(LOW10(pos));
                                 if (udtmp & UPDATE_VRAM0) {                                  if (udtmp & UPDATE_VRAM0) {
                                         makemix_mixgrph(dst + SURFACE_WIDTH * 0, SURFACE_WIDTH * 4,                                          makemix_mixgrph(dst + SURFACE_WIDTH * 0, SURFACE_WIDTH * 4,
                                                                                                 src + GRAM_BANK0L, fontcy);                                                                                                  src + GRAM_BANK0L, fontcy);
Line 286  const UINT8 *src; Line 286  const UINT8 *src;
                 } while(--x);                  } while(--x);
   
                 pos = LOW11(pos + makescrn.surfrx);                  pos = LOW11(pos + makescrn.surfrx);
                 if (updatetmp[LOW11(pos - 1)] & 4) {                    // 縦倍角描画だったら                  if (TRAMUPDATE(LOW11(pos - 1)) & 4) {                   // 縦倍角描画だったら
                         makescrn.fontycnt += makescrn.charcy;                          makescrn.fontycnt += makescrn.charcy;
                 }                  }
                 else {                  else {
Line 328  void width80x20h(void) { Line 328  void width80x20h(void) {
         do {          do {
                 x = makescrn.surfcx;                  x = makescrn.surfcx;
                 do {                  do {
                         udtmp = updatetmp[pos];                          udtmp = TRAMUPDATE(pos);
                         if (udtmp & UPDATE_TRAM) {                          if (udtmp & UPDATE_TRAM) {
                                 updatetmp[pos] = (UINT8)(udtmp & (~UPDATE_TRAM));                                  TRAMUPDATE(pos) = (UINT8)(udtmp & (~UPDATE_TRAM));
                                 newline = TRUE;                                  newline = TRUE;
                                 ZeroMemory(work, sizeof(work));                                  ZeroMemory(work, sizeof(work));
                                 makechr16(work, pos, fontcy, udtmp);                                  makechr16(work, pos, fontcy, udtmp);
Line 347  void width80x20h(void) { Line 347  void width80x20h(void) {
                 } while(--x);                  } while(--x);
   
                 pos = LOW11(pos + makescrn.surfrx);                  pos = LOW11(pos + makescrn.surfrx);
                 if (updatetmp[LOW11(pos - 1)] & 4) {                    // 縦倍角描画だったら                  if (TRAMUPDATE(LOW11(pos - 1)) & 4) {                   // 縦倍角描画だったら
                         makescrn.fontycnt += makescrn.charcy;                          makescrn.fontycnt += makescrn.charcy;
                 }                  }
                 else {                  else {
Line 389  void width80x10h(void) { Line 389  void width80x10h(void) {
         do {          do {
                 x = makescrn.surfcx;                  x = makescrn.surfcx;
                 do {                  do {
                         udtmp = updatetmp[pos];                          udtmp = TRAMUPDATE(pos);
                         if (udtmp & UPDATE_TRAM) {                          if (udtmp & UPDATE_TRAM) {
                                 updatetmp[pos] = (UINT8)(udtmp & (~UPDATE_TRAM));                                  TRAMUPDATE(pos) = (UINT8)(udtmp & (~UPDATE_TRAM));
                                 newline = TRUE;                                  newline = TRUE;
                                 ZeroMemory(work, sizeof(work));                                  ZeroMemory(work, sizeof(work));
                                 makechr16(work, pos, fontcy, udtmp);                                  makechr16(work, pos, fontcy, udtmp);
Line 408  void width80x10h(void) { Line 408  void width80x10h(void) {
                 } while(--x);                  } while(--x);
   
                 pos = LOW11(pos + makescrn.surfrx);                  pos = LOW11(pos + makescrn.surfrx);
                 if (updatetmp[LOW11(pos - 1)] & 4) {                    // 縦倍角描画だったら                  if (TRAMUPDATE(LOW11(pos - 1)) & 4) {                   // 縦倍角描画だったら
                         makescrn.fontycnt += makescrn.charcy;                          makescrn.fontycnt += makescrn.charcy;
                 }                  }
                 else {                  else {

Removed from v.1.5  
changed lines
  Added in v.1.6


RetroPC.NET-CVS <cvs@retropc.net>