Diff for /np2/vram/maketext.c between versions 1.5 and 1.6

version 1.5, 2003/12/12 01:04:41 version 1.6, 2004/02/07 21:23:22
Line 125  BYTE maketext_curblink(void) { Line 125  BYTE maketext_curblink(void) {
   
 void maketext(int text_renewal) {  void maketext(int text_renewal) {
   
           UINT8   multiple;
         BYTE    TEXT_LR;          BYTE    TEXT_LR;
         int             TEXT_PL;          int             TEXT_PL;
         int             TEXT_BL;          int             TEXT_BL;
Line 158  void maketext(int text_renewal) { Line 159  void maketext(int text_renewal) {
                 tramflag.gaiji = 0;                  tramflag.gaiji = 0;
         }          }
   
           multiple = ((!(gdc.mode1 & 8)) && (!gdc.crt15khz))?0x20:0x00;
         TEXT_LR = gdc.m.para[GDC_CSRFORM] & 0x1f;          TEXT_LR = gdc.m.para[GDC_CSRFORM] & 0x1f;
         TEXT_PL = crtc.reg.pl;          TEXT_PL = crtc.reg.pl;
         TEXT_BL = crtc.reg.bl + 1;          TEXT_BL = crtc.reg.bl + 1;
Line 265  void maketext(int text_renewal) { Line 267  void maketext(int text_renewal) {
                                                 }                                                  }
                                                 else {                                                  else {
                                                         bitmap[x] = 0x82000 +                                                           bitmap[x] = 0x82000 + 
                                                                                 (mem[0xa0000 + edi*2] << 3);                                                                                  (mem[0xa0000 + edi*2] << 4);
                                                         curx[x] |= 0x20;                                                // ver0.28                                                          curx[x] |= multiple;                                    // ver0.74
                                                         if ((curx[x] & TXTATR_BG) && (gdc.mode1 & 1)) {                                                          if ((curx[x] & TXTATR_BG) && (gdc.mode1 & 1)) {
                                                                 bitmap[x] += 0x800;                                                                  bitmap[x] += 8;
                                                         }                                                          }
                                                 }                                                  }
                                         }                                          }
Line 298  void maketext(int text_renewal) { Line 300  void maketext(int text_renewal) {
                                                         bitmap[x] += 8;                                                          bitmap[x] += 8;
                                                 }                                                  }
                                                 else if (!(gdc.mode1 & 8)) {                                                  else if (!(gdc.mode1 & 8)) {
                                                         curx[x] |= 0x20;                                                          curx[x] |= multiple;
                                                 }                                                  }
                                         }                                          }
                                         lastbitp = bitmap[x];                                          lastbitp = bitmap[x];
Line 348  void maketext(int text_renewal) { Line 350  void maketext(int text_renewal) {
                                         // width80                                          // width80
                                         for (x=0; x<TEXTXMAX; x++) {                                          for (x=0; x<TEXTXMAX; x++) {
                                                 int fntline;                                                  int fntline;
                                                 BYTE data;                                                  UINT8 data;
                                                 fntline = nowline & 0x0f;                                                  fntline = nowline;
                                                 if (curx[x] & 0x20) {                                                  if (curx[x] & 0x20) {
                                                         fntline >>= 1;                                                          fntline >>= 1;
                                                 }                                                  }
                                                 data = fontrom[bitmap[x] + fntline];                                                  data = fontrom[bitmap[x] + (fntline & 0x0f)];
                                                 *(UINT32 *)(q+0) = text_table[color[x] + (data >> 4)];                                                  *(UINT32 *)(q+0) = text_table[color[x] + (data >> 4)];
                                                 *(UINT32 *)(q+4) = text_table[color[x] + (data & 15)];                                                  *(UINT32 *)(q+4) = text_table[color[x] + (data & 15)];
                                                 q += 8;                                                  q += 8;
Line 434  void maketext(int text_renewal) { Line 436  void maketext(int text_renewal) {
   
 void maketext40(int text_renewal) {  void maketext40(int text_renewal) {
   
           UINT8   multiple;
         BYTE    TEXT_LR;          BYTE    TEXT_LR;
         int             TEXT_PL;          int             TEXT_PL;
         int             TEXT_BL;          int             TEXT_BL;
Line 467  void maketext40(int text_renewal) { Line 470  void maketext40(int text_renewal) {
                 tramflag.gaiji = 0;                  tramflag.gaiji = 0;
         }          }
   
           multiple = ((!(gdc.mode1 & 8)) && (!gdc.crt15khz))?0x20:0x00;
         TEXT_LR = gdc.m.para[GDC_CSRFORM] & 0x1f;          TEXT_LR = gdc.m.para[GDC_CSRFORM] & 0x1f;
         TEXT_PL = crtc.reg.pl;          TEXT_PL = crtc.reg.pl;
         TEXT_BL = crtc.reg.bl + 1;          TEXT_BL = crtc.reg.bl + 1;
Line 574  void maketext40(int text_renewal) { Line 578  void maketext40(int text_renewal) {
                                                 }                                                  }
                                                 else {                                                  else {
                                                         bitmap[x] = 0x82000 +                                                           bitmap[x] = 0x82000 + 
                                                                                 (mem[0xa0000 + edi*2] << 3);                                                                                  (mem[0xa0000 + edi*2] << 4);
                                                         curx[x] |= 0x20;                                                // ver0.28                                                          curx[x] |= multiple;                                    // ver0.74
                                                         if ((curx[x] & TXTATR_BG) && (gdc.mode1 & 1)) {                                                          if ((curx[x] & TXTATR_BG) && (gdc.mode1 & 1)) {
                                                                 bitmap[x] += 0x800;                                                                  bitmap[x] += 8;
                                                         }                                                          }
                                                 }                                                  }
                                         }                                          }
Line 607  void maketext40(int text_renewal) { Line 611  void maketext40(int text_renewal) {
                                                         bitmap[x] += 8;                                                          bitmap[x] += 8;
                                                 }                                                  }
                                                 else if (!(gdc.mode1 & 8)) {                                                  else if (!(gdc.mode1 & 8)) {
                                                         curx[x] |= 0x20;                                                          curx[x] |= multiple;
                                                 }                                                  }
                                         }                                          }
                                         lastbitp = bitmap[x];                                          lastbitp = bitmap[x];
Line 658  void maketext40(int text_renewal) { Line 662  void maketext40(int text_renewal) {
                                         for (x=0; x<(TEXTXMAX/2); x++) {                                          for (x=0; x<(TEXTXMAX/2); x++) {
                                                 int fntline;                                                  int fntline;
                                                 BYTE data;                                                  BYTE data;
                                                 fntline = nowline & 0x0f;                                                  fntline = nowline;
                                                 if (curx[x] & 0x20) {                                                  if (curx[x] & 0x20) {
                                                         fntline >>= 1;                                                          fntline >>= 1;
                                                 }                                                  }
                                                 data = fontrom[bitmap[x] + fntline];                                                  data = fontrom[bitmap[x] + (fntline & 0x0f)];
                                                 *(UINT32 *)(q+ 0) = text_tblx2[color[x] +                                                  *(UINT32 *)(q+ 0) = text_tblx2[color[x] +
                                                                                                                         (data>>4)][0];                                                                                                                          (data>>4)][0];
                                                 *(UINT32 *)(q+ 4) = text_tblx2[color[x] +                                                  *(UINT32 *)(q+ 4) = text_tblx2[color[x] +

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


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