home *** CD-ROM | disk | FTP | other *** search
- These are the patches that need to be applied to build a protected
- mode TurboVision application (including the makefile).
-
- These patches assume you have the version of TurboVision that comes
- with Borland C 3.1.
-
-
- =============================
- Comparing makefile with n:makefile
- =============================
- 64 a 65
- > LSTDIR = $(TVDIR)\lst
- 66 c 67,76
- < .path.obj = $(OBJDIR)
- ---
- > !ifdef PROT
- > CPROT = -DPROTECT -2 -vi -h
- > APROT = -DPROTECT
- > OBJDIR = $(TVDIR)\pobjs
- > TVLIB = tvprot.lib
- > !else
- > CPROT =
- > APROT =
- > TVLIB = tv.lib
- > !endif
- 67 a 78,79
- > .path.obj = $(OBJDIR)
- >
- 100,101 c 112,113
- < CFLAGS = -c $(CCOVYFLAGS) -P -O1 -m$(MODEL) -I$(INCLUDE) -n$(OBJDIR) $(CBUGFLAGS)
- < AFLAGS = /m$(MODEL) $(AOVYFLAGS) $(ABUGFLAGS)
- ---
- > CFLAGS = -c $(CCOVYFLAGS) -P -O1 -m$(MODEL) -I$(INCLUDE) -n$(OBJDIR) $(CBUGFLAGS) $(CPROT)
- > AFLAGS = /m$(MODEL) $(AOVYFLAGS) $(ABUGFLAGS) $(APROT)
- 272 c 284
- < $(TASM) $&.asm, $(OBJDIR)\$&.obj
- ---
- > $(TASM) $&.asm, $(OBJDIR)\$&.obj, $(LSTDIR)\$&.lst
- 277 c 289
- < all: tv.cfg dirs $(TVLIBDIR)\tv.lib
- ---
- > all: tv.cfg dirs $(TVLIBDIR)\$(TVLIB)
- 290 c 302,304
- < echo $(CFLAGS) >tv.cfg
- ---
- > -copy &&|
- > $(CFLAGS)
- > | tv.cfg
- 312,313 c 326,327
- < $(TVLIBDIR)\tv.lib: $(OBJS)
- < del $(TVLIBDIR)\tv.lib
- ---
- > $(TVLIBDIR)\$(TVLIB): $(OBJS)
- > del $(TVLIBDIR)\$(TVLIB)
- 315 c 329
- < $(TLIB) $(LBUGFLAGS) $(TVLIBDIR)\tv.lib @$(TVDIR)\source\tvlib.rsp
- ---
- > $(TLIB) $(LBUGFLAGS) $(TVLIBDIR)\$(TVLIB) @$(TVDIR)\source\tvlib.rsp
- =============================
- Comparing tscreen.cpp with n:tscreen.cpp
- =============================
- 47,100 c 47
- <
- < extern "C"
- < extern char _protected;
- <
- < #pragma warn -asc
- <
- < static ushort protGetRows(void)
- < {
- < _AX = 0x1130;
- < _BH = 0;
- < _DL = 0;
- <
- < if (_protected)
- < {
- < asm {
- < PUSH ES
- < PUSH DS
- < PUSH DI
- < PUSH SI
- < PUSHF
- < PUSH DX
- < PUSH CX
- < PUSH BX
- < PUSH AX
- <
- < MOV DX,SP
- < PUSH SS
- < POP DS /* DS:DX points to the MSB */
- < MOV BX, 8 /* only AX - DX can be changed */
- < MOV AX, 0E310h /* call int 10H in real mode */
- < INT 21h
- <
- < POP AX
- < POP BX
- < POP CX
- < POP CX
- < POPF /* flags and below were not modified by E3 */
- < POP SI
- < POP DI
- < POP DS
- < POP ES
- < }
- < }
- < else
- < {
- < asm INT 10h
- < }
- < if (_DL == 0)
- < _DL = 24;
- < return _DL + 1;
- < }
- <
- < #pragma warn .asc
- <
- ---
- > extern "C" ushort protGetRows(void);
- =============================
- Comparing tvwrite.asm with n:tvwrite.asm
- =============================
- 55,57 c 55,57
- < IFDEF 0; PROTECT
- < EXTRN _MONOSEG:WORD
- < EXTRN _COLRSEG:WORD
- ---
- > IFDEF PROTECT
- > EXTRN _monoSeg:WORD
- > EXTRN _colrSeg:WORD
- 215 c 215
- < IFDEF 0; PROTECT
- ---
- > IFDEF PROTECT
- 221 c 221
- < CMP SI,[_MONOSEG]
- ---
- > CMP SI,[_monoSeg]
- 225 c 225
- < @@P01: CMP SI,[_COLRSEG]
- ---
- > @@P01: CMP SI,[_colrSeg]
- =============================
- Comparing tobjstrm.cpp with n:tobjstrm.cpp
- =============================
- 158 a 159,161
- > #ifdef PROTECT
- > else if( ((char far *)o1)+1 < ((char far *)o2)+1 ) // force normalization
- > #else
- 159 a 163
- > #endif
- =============================
- Comparing tview.cpp with n:tview.cpp
- =============================
- 23 a 24
- > #define Uses_TScreen
- =============================