ref: 3c380e243cc62bc0adfbbbaba95976a0c7ab5da2
parent: da91b3295abdb26f947958f605aee4c17418ac61
author: levesqu8 <levesqu8@msu.edu>
date: Fri Jan 12 10:19:39 EST 2018
increased z_init alloc so that 1080p doesn't crash due to alloc problems
--- a/rott/_z_zone.h
+++ b/rott/_z_zone.h
@@ -24,7 +24,7 @@
#define MINFRAGMENT 64
#define DPMI_INT 0x31
-#define MAXMEMORYSIZE 9000000
+#define MAXMEMORYSIZE 900000000
#define LEVELZONESIZE 250000
--- a/rott/rt_draw.c
+++ b/rott/rt_draw.c
@@ -3322,8 +3322,11 @@
// RotateBuffer
//
//******************************************************************************
+
+extern boolean skipRotate;
+
void RotateBuffer (int startangle, int endangle, int startscale, int endscale, int time)
-{
+{
int savetics;
//save off fastcounter
@@ -3379,7 +3382,7 @@
xst = (((-cx)*s)+((328)<<16))-(cy*c);
xct = (((-cx)*c)+((397)<<16)+(1<<18)-(1<<16))+(cy*s);
}//328 397
- else if ((iGLOBAL_SCREENWIDTH == 1024 )&&(masked == false)) {
+ else if ((iGLOBAL_SCREENWIDTH >= 1024 )&&(masked == false)) {
xst = (((-cx)*s)+((410)<<16))-(cy*c);// 1024/768=1.3333
xct = (((-cx)*c)+((500)<<16)+(1<<18)-(1<<16))+(cy*s);
}//388 397
@@ -6002,9 +6005,6 @@
ecx += mr_ystep;
}
} else if (iGLOBAL_SCREENWIDTH == 800) {
-
-
-
srctmp = src;
desttmp = dest;
@@ -6045,7 +6045,7 @@
}
}
- else if (iGLOBAL_SCREENWIDTH == 1024) {
+ else if (iGLOBAL_SCREENWIDTH >= 1024) {
srctmp = src;
desttmp = dest;
@@ -6068,6 +6068,33 @@
edx += mr_xstep;
ecx += mr_ystep;
}
+ }
+ else
+ {
+ srctmp = src;
+ desttmp = dest;
+
+ desttmp -= (iGLOBAL_SCREENWIDTH*1);
+
+/*
+ ecx = mr_yfrac;
+ edx = mr_xfrac;
+*/
+ while (count--) {
+ eax = edx >> 16;
+ if (eax < (256*(iGLOBAL_SCREENWIDTH/320)) && (ecx >> 16) < (512*((iGLOBAL_SCREENWIDTH/320 + iGLOBAL_SCREENHEIGHT/200)<<1))) {
+ eax = (eax << 10) | ((ecx << 6) >> (32-10));
+ } else {
+ eax = 0;
+ }
+
+ *desttmp++ = srctmp[eax];
+
+ edx += mr_xstep;
+ ecx += mr_ystep;
+ }
+
+
}
}
--- a/rott/rt_game.c
+++ b/rott/rt_game.c
@@ -2953,7 +2953,8 @@
//DrawPlayScreen(true);//repaint ammo and life stat
break;
}
- if (playstate != ex_gameover)
+ //fix for play screen accidentally being drawn during transmitter explosion cinematic
+ if (playstate != ex_gameover)
DrawPlayScreen(true);//repaint ammo and life stat
}
--- a/rott/rt_main.c
+++ b/rott/rt_main.c
@@ -255,7 +255,7 @@
// Start up Memory manager with a certain amount of reserved memory
- Z_Init(50000,1000000);
+ Z_Init(50000,10000000);
IN_Startup ();