Diff for /xmil/vram/make24.c between versions 1.1 and 1.3

version 1.1, 2004/08/07 07:19:56 version 1.3, 2004/08/10 08:28:49
Line 1 Line 1
 #include        "compiler.h"  #include        "compiler.h"
 #include        "scrnmng.h"  #include        "scrnmng.h"
 #include        "pccore.h"  #include        "pccore.h"
 #include        "iocore.h"  
 #include        "vram.h"  #include        "vram.h"
 #include        "scrndraw.h"  #include        "scrndraw.h"
 #include        "makescrn.h"  #include        "makescrn.h"
Line 9 Line 8
 #include        "font.h"  #include        "font.h"
   
   
 extern  BYTE    dispflg;  
 extern  BYTE    *dispp;  
   
   
 void width80x25_200h(void) {                                                            // 80x25 200line  void width80x25_200h(void) {                                                            // 80x25 200line
   
         UINT    fontcy;          UINT    fontcy;
Line 29  const UINT8 *src; Line 24  const UINT8 *src;
         UINT    i;          UINT    i;
   
         fontcy = min(makescrn.fontcy, MAKETEXT_ROW);          fontcy = min(makescrn.fontcy, MAKETEXT_ROW);
         pos = crtc.s.TXT_TOP;          pos = makescrn.vramtop;
         dst = screenmap;          dst = screenmap;
         newline = FALSE;          newline = FALSE;
         y = makescrn.surfcy;          y = makescrn.surfcy;
Line 38  const UINT8 *src; Line 33  const UINT8 *src;
                 x = makescrn.surfcx;                  x = makescrn.surfcx;
                 do {                  do {
                         udtmp = updatetmp[pos];                          udtmp = updatetmp[pos];
                         if (udtmp & dispflg) {                          if (udtmp & makescrn.dispflag) {
                                 updatetmp[pos] = (UINT8)(udtmp & (~dispflg));                                  updatetmp[pos] = (UINT8)(udtmp & (~makescrn.dispflag));
                                 newline = TRUE;                                  newline = TRUE;
                                 ZeroMemory(work, sizeof(work));                                  ZeroMemory(work, sizeof(work));
                                 makechr16(work, pos, fontcy, udtmp);                                  makechr16(work, pos, fontcy, udtmp);
                                 src = dispp + (pos << 5);                                  src = makescrn.disp1 + (pos << 5);
                                 makemix_mix(dst, SURFACE_WIDTH * 2, work, src, fontcy);                                  makemix_mix(dst, SURFACE_WIDTH * 2, work, src, fontcy);
                                 makemix_mix(dst + SURFACE_WIDTH, SURFACE_WIDTH * 2,                                  makemix_mix(dst + SURFACE_WIDTH, SURFACE_WIDTH * 2,
                                                                         work + MAKETEXT_STEP, src, fontcy);                                                                          work + MAKETEXT_STEP, src, fontcy);
Line 91  const UINT8 *src; Line 86  const UINT8 *src;
         UINT    i;          UINT    i;
   
         fontcy = min(makescrn.fontcy, MAKETEXT_ROW);          fontcy = min(makescrn.fontcy, MAKETEXT_ROW);
         pos = crtc.s.TXT_TOP;          pos = makescrn.vramtop;
         dst = screenmap;          dst = screenmap;
         newline = FALSE;          newline = FALSE;
         y = makescrn.surfcy;          y = makescrn.surfcy;
Line 154  const UINT8 *src; Line 149  const UINT8 *src;
         UINT    i;          UINT    i;
   
         fontcy = min(makescrn.fontcy, MAKETEXT_ROW);          fontcy = min(makescrn.fontcy, MAKETEXT_ROW);
         pos = crtc.s.TXT_TOP;          pos = makescrn.vramtop;
         dst = screenmap;          dst = screenmap;
         newline = FALSE;          newline = FALSE;
         y = makescrn.surfcy;          y = makescrn.surfcy;
Line 163  const UINT8 *src; Line 158  const UINT8 *src;
                 x = makescrn.surfcx;                  x = makescrn.surfcx;
                 do {                  do {
                         udtmp = updatetmp[pos];                          udtmp = updatetmp[pos];
                         if (udtmp & dispflg) {                          if (udtmp & makescrn.dispflag) {
                                 updatetmp[pos] = (UINT8)(udtmp & (~dispflg));                                  updatetmp[pos] = (UINT8)(udtmp & (~makescrn.dispflag));
                                 newline = TRUE;                                  newline = TRUE;
                                 ZeroMemory(work, sizeof(work));                                  ZeroMemory(work, sizeof(work));
                                 makechr16(work, pos, fontcy, udtmp);                                  makechr16(work, pos, fontcy, udtmp);
                                 src = dispp + (LOW10(pos) << 5);                                  src = makescrn.disp1 + (LOW10(pos) << 5);
                                 makemix_mix(dst, SURFACE_WIDTH * 4, work, src, fontcy);                                  makemix_mix(dst, SURFACE_WIDTH * 4, work, src, fontcy);
                                 makemix_mix(dst + SURFACE_WIDTH * 2, SURFACE_WIDTH * 4,                                  makemix_mix(dst + SURFACE_WIDTH * 2, SURFACE_WIDTH * 4,
                                                 work + MAKETEXT_STEP, src + GRAM_HALFSTEP, fontcy);                                                  work + MAKETEXT_STEP, src + GRAM_HALFSTEP, fontcy);
Line 217  const UINT8 *src; Line 212  const UINT8 *src;
         UINT    i;          UINT    i;
   
         fontcy = min(makescrn.fontcy, MAKETEXT_ROW);          fontcy = min(makescrn.fontcy, MAKETEXT_ROW);
         pos = crtc.s.TXT_TOP;          pos = makescrn.vramtop;
         dst = screenmap;          dst = screenmap;
         newline = FALSE;          newline = FALSE;
         y = makescrn.surfcy;          y = makescrn.surfcy;
Line 283  void width80x20h(void) { Line 278  void width80x20h(void) {
         UINT    i;          UINT    i;
   
         fontcy = min(makescrn.fontcy, MAKETEXT_ROW);          fontcy = min(makescrn.fontcy, MAKETEXT_ROW);
         pos = crtc.s.TXT_TOP;          pos = makescrn.vramtop;
         dst = screenmap;          dst = screenmap;
         newline = FALSE;          newline = FALSE;
         y = makescrn.surfcy;          y = makescrn.surfcy;
Line 345  void width80x10h(void) { Line 340  void width80x10h(void) {
         UINT    i;          UINT    i;
   
         fontcy = min(makescrn.fontcy, MAKETEXT_ROW);          fontcy = min(makescrn.fontcy, MAKETEXT_ROW);
         pos = crtc.s.TXT_TOP;          pos = makescrn.vramtop;
         dst = screenmap;          dst = screenmap;
         newline = FALSE;          newline = FALSE;
         y = makescrn.surfcy;          y = makescrn.surfcy;

Removed from v.1.1  
changed lines
  Added in v.1.3


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