From 00cb4ec98556576ca068da93ef900217d023738a Mon Sep 17 00:00:00 2001 From: Rick Parrish Date: Thu, 7 Feb 2013 13:52:38 -0500 Subject: [PATCH] RENEGADE now compiles with VP Of course it doesn't work yet, so don't try running it! --- SOURCE/BOOT.PAS | 32 ++++++++++++++++++ SOURCE/COMMON.PAS | 52 ++++++++++++++++++++++++++++- SOURCE/COMMON2.PAS | 30 +++++++++++++++++ SOURCE/COMMON4.PAS | 81 +++++++++++++++++++++++++++++++++++++++++++++ SOURCE/EVENTS.PAS | 14 +++++++- SOURCE/EXECBAT.PAS | 6 ++++ SOURCE/LINECHAT.PAS | 12 ++++++- SOURCE/MAIL1.PAS | 2 +- SOURCE/MYIO.PAS | 20 +++++++++++ SOURCE/RENEGADE.PAS | 6 ++++ SOURCE/SPAWNO.PAS | 13 ++++++++ SOURCE/SPLITCHA.PAS | 9 +++-- SOURCE/SYSOP4.PAS | 15 +++++++++ SOURCE/WFCMENU.PAS | 26 ++++++++++++++- 14 files changed, 311 insertions(+), 7 deletions(-) diff --git a/SOURCE/BOOT.PAS b/SOURCE/BOOT.PAS index 54a75d3..81b011f 100644 --- a/SOURCE/BOOT.PAS +++ b/SOURCE/BOOT.PAS @@ -837,6 +837,7 @@ VAR WinOk, WinNTOk: Boolean; +{$IFDEF MSDOS} FUNCTION TrueDosVer(VAR WinNTOk: Boolean): Word; VAR Regs: Registers; @@ -852,7 +853,15 @@ VAR TrueDosVer := Bl; END; END; +{$ENDIF} +{$IFDEF WIN32} + FUNCTION TrueDosVer(VAR WinNTOk: Boolean): Word; + BEGIN + WriteLn('REETODO BOOT TrueDosVer'); Halt; + END; +{$ENDIF} +{$IFDEF MSDOS} FUNCTION DosVer(VAR Minor,OS2Ver: Word): Word; VAR Regs: Registers; @@ -870,7 +879,15 @@ VAR OS2Ver := 2; END; END; +{$ENDIF} +{$IFDEF WIN32} + FUNCTION DosVer(VAR Minor,OS2Ver: Word): Word; + BEGIN + WriteLn('REETODO BOOT DosVer'); Halt; + END; +{$ENDIF} +{$IFDEF MSDOS} FUNCTION Win3_Check_On: Boolean; VAR Regs: Registers; @@ -885,7 +902,15 @@ VAR Win3_Check_On := TRUE; END; END; +{$ENDIF} +{$IFDEF WIN32} + FUNCTION Win3_Check_On: Boolean; + BEGIN + WriteLn('REETODO BOOT Win3_Check_On'); Halt; + END; +{$ENDIF} +{$IFDEF MSDOS} FUNCTION DV_Check_On: Boolean; VAR Regs: Registers; @@ -903,6 +928,13 @@ VAR ELSE DV_Check_On := TRUE; END; +{$ENDIF} +{$IFDEF WIN32} + FUNCTION DV_Check_On: Boolean; + BEGIN + WriteLn('REETODO BOOT DV_Check_On'); Halt; + END; +{$ENDIF} BEGIN D5 := 0; diff --git a/SOURCE/COMMON.PAS b/SOURCE/COMMON.PAS index 05303ef..f8cbaf3 100644 --- a/SOURCE/COMMON.PAS +++ b/SOURCE/COMMON.PAS @@ -276,7 +276,9 @@ VAR DatFilePath: STRING[40]; Interrupt14: Pointer; { far ptr TO interrupt 14 } +{$IFDEF MSDOS} Ticks: LongInt ABSOLUTE $0040:$006C; +{$ENDIF} IEMSIRec: IEMSIRecord; FossilPort: Word; SockHandle: STRING; { Telnet Handle } @@ -464,6 +466,9 @@ VAR MQArea, VQArea: Boolean; +{$IFDEF WIN32} +function Ticks: LongInt; +{$ENDIF} FUNCTION GetC(c: Byte): STRING; PROCEDURE ShowColors; FUNCTION CheckDriveSpace(S,Path: AStr; MinSpace: Integer): Boolean; @@ -664,10 +669,29 @@ USES MultNode, SpawnO, SysOp12, - Vote; + Vote +{$IFDEF WIN32} + ,VPUtils +{$ENDIF} + ; +{$IFDEF WIN32} +function Ticks: LongInt; +begin + Ticks := GetTimeMSec div 55; +end; +{$ENDIF} + +{$IFDEF MSDOS} FUNCTION UpdateCRC32(CRC: LongInt; VAR Buffer; Len: Word): LongInt; EXTERNAL; {$L CRC32.OBJ } +{$ENDIF} +{$IFDEF WIN32} +FUNCTION UpdateCRC32(CRC: LongInt; VAR Buffer; Len: Word): LongInt; +BEGIN + WriteLn('REETODO COMMON UpdateCRC32'); +END; +{$ENDIF} FUNCTION CheckPW: Boolean; BEGIN @@ -2692,16 +2716,23 @@ CONST LastTimeSlice: LongInt = 0; LastCheckTimeSlice: LongInt = 0; VAR +{$IFDEF MSDOS} Killme: Pointer ABSOLUTE $0040 :$F000; +{$ENDIF} Tf: Boolean; I: Integer; C: Word; TempTimer: LongInt; BEGIN IF (DieLater) THEN +{$IFDEF MSDOS} ASM Call Killme END; +{$ENDIF} +{$IFDEF WIN32} + Halt; +{$ENDIF} LIL := 1; IF (Buf <> '') THEN BEGIN @@ -2741,11 +2772,16 @@ BEGIN BEGIN FOR I := 1 TO 100 DO BEGIN +{$IFDEF MSDOS} Sound(500 + (I * 10)); Delay(2); Sound(100 + (I * 10)); Delay(2); NoSound; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON GetKey'); Halt; +{$ENDIF} END; LastBeep := TempTimer; END; @@ -4008,7 +4044,12 @@ BEGIN TempStr := ''; FOR XPos := 1 TO MaxDisplayCols DO BEGIN +{$IFDEF MSDOS} c := Chr(Mem[VidSeg:(160 * (YPos - 1) + 2 * (XPos - 1))]); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON ScreenDump'); Halt; +{$ENDIF} IF (c = #0) THEN c := #32; IF ((XPos = WhereX) AND (YPos = WhereY)) THEN @@ -4338,7 +4379,9 @@ BEGIN SaveCurCo := CurrentColor; SaveMCIAllowed := MCIAllowed; MCIAllowed := TRUE; +{$IFDEF MSDOS} NoSound; +{$ENDIF} IF (NOT AllowContinue) AND NOT (PrintingFile AND AllowAbort) THEN IsCont := FALSE; IF (IsCont) THEN @@ -4804,7 +4847,9 @@ END; FUNCTION DiskKBFree(DrivePath: AStr): LongInt; VAR F: TEXT; +{$IFDEF MSDOS} Regs: Registers; +{$ENDIF} S, S1: STRING; Counter: Integer; @@ -4843,6 +4888,7 @@ BEGIN END ELSE BEGIN +{$IFDEF MSDOS} FillChar(Regs,SizeOf(Regs),#0); Regs.Ah := $36; Regs.Dl := ExtractDriveNumber(DrivePath); @@ -4850,6 +4896,10 @@ BEGIN C := (1.0 * Regs.Ax); C1 := ((1.0 * Regs.Cx) * C); C2 := ((1.0 * Regs.Bx) * C1); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON DiskKBFree'); Halt; +{$ENDIF} END; DiskKBFree := Round(C2 / 1024.0); END; diff --git a/SOURCE/COMMON2.PAS b/SOURCE/COMMON2.PAS index d46370e..be40eff 100644 --- a/SOURCE/COMMON2.PAS +++ b/SOURCE/COMMON2.PAS @@ -280,7 +280,12 @@ BEGIN CASE WhichScreen OF 1 : WITH ThisUser DO BEGIN +{$IFDEF MSDOS} Update_Logo(Win1,ScreenAddr[(FirstRow - 1) * 160],WIN1_LENGTH); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON2 Update_Logo(Win1'); Halt; +{$ENDIF} GoToXY(02,FirstRow); Write(Caps(Name)); GoToXY(33,FirstRow); @@ -325,7 +330,12 @@ BEGIN END; 2 : WITH ThisUser DO BEGIN +{$IFDEF MSDOS} Update_Logo(Win2,ScreenAddr[(FirstRow - 1) * 160],WIN2_LENGTH); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON2 Update_Logo(Win2'); Halt; +{$ENDIF} GoToXY(02,FirstRow); Write(Street); GoToXY(33,FirstRow); @@ -358,7 +368,12 @@ BEGIN END; 3 : WITH ThisUser DO BEGIN +{$IFDEF MSDOS} Update_Logo(Win3,ScreenAddr[(FirstRow - 1) * 160],WIN3_LENGTH); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON2 Update_Logo(Win3'); Halt; +{$ENDIF} GoToXY(06,FirstRow); Write(Loggedon); GoToXY(16,FirstRow); @@ -407,7 +422,12 @@ BEGIN Close(HistoryFile); WITH History DO BEGIN +{$IFDEF MSDOS} Update_Logo(Win4,ScreenAddr[(FirstRow - 1) * 160],WIN4_LENGTH); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON2 Update_Logo(Win4'); Halt; +{$ENDIF} GoToXY(20,FirstRow); Write(Callers); GoToXY(34,FirstRow); @@ -430,7 +450,12 @@ BEGIN END; 5 : WITH History DO BEGIN +{$IFDEF MSDOS} Update_Logo(Win5,ScreenAddr[(FirstRow - 1) * 160],WIN5_LENGTH); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON2 Update_Logo(Win5'); Halt; +{$ENDIF} GoToXY(20,FirstRow); Write(General.CallerNum); GoToXY(31,FirstRow); @@ -555,7 +580,12 @@ BEGIN CASE Ord(C) OF 119 : BEGIN { CTRL-HOME } SaveScreen(Wind); +{$IFDEF MSDOS} Update_Logo(SYSKEY,ScreenAddr[0],SYSKEY_LENGTH); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON2 Update_Logo(SYSKEY'); Halt; +{$ENDIF} CursorOn(FALSE); C := ReadKey; IF (C = #0) THEN diff --git a/SOURCE/COMMON4.PAS b/SOURCE/COMMON4.PAS index 1961b5c..7072c8f 100644 --- a/SOURCE/COMMON4.PAS +++ b/SOURCE/COMMON4.PAS @@ -367,6 +367,7 @@ PROCEDURE Com_Flush_Recv; BEGIN IF (NOT LocalIOOnly) THEN BEGIN +{$IFDEF MSDOS} ASM Cmp InWfcMenu,1 Je @TheEnd @@ -375,6 +376,10 @@ BEGIN Int 14h @TheEnd: END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_Flush_Recv'); Halt; +{$ENDIF} END ELSE WHILE NOT (Com_IsRecv_Empty) DO WriteWFC(CInKey); @@ -399,6 +404,7 @@ the output buffer (not transmitted yet) is discarded. PROCEDURE Com_Purge_Send; BEGIN +{$IFDEF MSDOS} ASM Cmp LocalIOOnly,1 Je @TheEnd @@ -407,6 +413,10 @@ BEGIN Int 14h @TheEnd: END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_Purge_Send'); Halt; +{$ENDIF} END; (* @@ -436,6 +446,7 @@ VAR Dummy: Byte; BEGIN Dummy := 0; (* New *) +{$IFDEF MSDOS} ASM Cmp LocalIOOnly,1 Je @TheEnd @@ -445,6 +456,10 @@ BEGIN Mov Dummy,AL @TheEnd: END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_Carrier'); Halt; +{$ENDIF} Com_Carrier := (Dummy AND $80) = $80; END; @@ -478,6 +493,7 @@ VAR BEGIN Com_Recv := #0; T_RecvChar := FALSE; +{$IFDEF MSDOS} ASM Cmp LocalIOOnly,1 Je @TheEnd @@ -493,6 +509,10 @@ BEGIN Mov T_RecvChar,1 @TheEnd: END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_Recv'); Halt; +{$ENDIF} IF (T_RecvChar) THEN Com_Recv := Char(Dummy); END; @@ -524,6 +544,7 @@ VAR Dummy: Byte; BEGIN Dummy := 0; (* New *) +{$IFDEF MSDOS} ASM Cmp LocalIOOnly,1 Je @TheEnd @@ -533,6 +554,10 @@ BEGIN Mov Dummy,AH @TheEnd: END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_IsRecv_Empty'); Halt; +{$ENDIF} Com_IsRecv_Empty := NOT ((Dummy AND $01) = $01); END; @@ -563,6 +588,7 @@ VAR Dummy: Byte; BEGIN Dummy := 0; (* New *) +{$IFDEF MSDOS} ASM Cmp LocalIOOnly,1 Je @TheEnd @@ -572,6 +598,10 @@ BEGIN Mov Dummy,AH @TheEnd: END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_IsSend_Empty'); Halt; +{$ENDIF} Com_IsSend_Empty := ((Dummy AND $40) = $40); END; @@ -589,6 +619,7 @@ value of 0000h is returned in AX. If the driver accepts the character PROCEDURE Com_Send(C: Char); BEGIN +{$IFDEF MSDOS} ASM Cmp LocalIOOnly,1 Je @TheEnd @@ -598,6 +629,10 @@ BEGIN Int 14h @TheEnd: END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_Send'); Halt; +{$ENDIF} END; (* @@ -673,12 +708,17 @@ BEGIN T_AL := 32; END; Inc(T_AL,3); +{$IFDEF MSDOS} ASM Mov AH,00h Mov AL,T_AL Mov DX,FossilPort Int 14h END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_Set_Speed'); Halt; +{$ENDIF} END; END; @@ -696,16 +736,22 @@ PROCEDURE Com_DeInstall; BEGIN IF (NOT LocalIOOnly) THEN BEGIN +{$IFDEF MSDOS} ASM Mov AH,05h Mov DX,FossilPort Int 14h END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_DeInstall'); Halt; +{$ENDIF} END; END; PROCEDURE Com_Install; +{$IFDEF MSDOS} FUNCTION DriverInstalled: Word; ASSEMBLER; ASM Mov AH,5 @@ -716,6 +762,13 @@ PROCEDURE Com_Install; PushF Call Interrupt14 END; +{$ENDIF} +{$IFDEF WIN32} + FUNCTION DriverInstalled: Word; + BEGIN + DriverInstalled := $1954; // Seems to be what it wants + END; +{$ENDIF} BEGIN FossilPort := (Liner.Comport - 1); @@ -728,6 +781,7 @@ BEGIN Halt; END ELSE +{$IFDEF MSDOS} ASM Xor AL,AL Mov BL,Liner.MFlags @@ -744,9 +798,14 @@ BEGIN PushF Call Interrupt14 END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Com_Install'); Halt; +{$ENDIF} Com_Set_Speed(Liner.InitBaud); END; +{$IFDEF MSDOS} PROCEDURE CheckHangup; ASSEMBLER; ASM Cmp LocalIOOnly,1 @@ -762,6 +821,13 @@ ASM Mov HangUp,1 @GetOut: END; +{$ENDIF} +{$IFDEF WIN32} +PROCEDURE CheckHangup; +BEGIN + WriteLn('REETODO COMMON4 CheckHangup'); Halt; +END; +{$ENDIF} (* AH = 19h Write block (transfer from user buffer to FOSSIL) @@ -790,6 +856,7 @@ BEGIN T_DI := OFS(S[1]); T_CX := Length(S); T_ES := Seg(S[1]); +{$IFDEF MSDOS} ASM Mov AH,19h Mov DI,T_DI @@ -799,6 +866,10 @@ BEGIN Int 14h Mov T_AX,AX END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 SerialOut'); Halt; +{$ENDIF} Move(S[T_AX + 1],S[1],Length(S) - T_AX); Dec(S[0],T_AX); UNTIL (S = ''); @@ -834,12 +905,17 @@ BEGIN Empty := NOT KeyPressed; IF (InCom) AND (NOT KeyPressed) THEN BEGIN +{$IFDEF MSDOS} ASM Mov DX,FossilPort Mov AH,03h Int 14h Mov T_AH,AH END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 Empty'); Halt; +{$ENDIF} Empty := NOT (T_AH AND 1 = 1); END; END; @@ -862,12 +938,17 @@ BEGIN IF (NOT LocalIOOnly) THEN BEGIN T_AL := Byte(Status); +{$IFDEF MSDOS} ASM Mov AH,06h Mov DX,FossilPort Mov AL,T_AL Int 14h END; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO COMMON4 DTR'); Halt; +{$ENDIF} END; END; diff --git a/SOURCE/EVENTS.PAS b/SOURCE/EVENTS.PAS index d9512f5..24ed03e 100644 --- a/SOURCE/EVENTS.PAS +++ b/SOURCE/EVENTS.PAS @@ -19,7 +19,11 @@ IMPLEMENTATION USES Dos, Common, - TimeFunc; + TimeFunc +{$IFDEF WIN32} + ,Windows +{$ENDIF} + ; FUNCTION InTime(Tim,Tim1,Tim2: LongInt): Boolean; BEGIN @@ -226,11 +230,19 @@ END; FUNCTION SysOpAvailable: Boolean; VAR +{$IFDEF MSDOS} A: Byte ABSOLUTE $0000:$0417; +{$ENDIF} EventNum: Integer; ChatOk: Boolean; BEGIN +{$IFDEF MSDOS} ChatOk := ((A AND 16) = 0); +{$ENDIF} +{$IFDEF WIN32} + // Availability is togged with scroll lock key + ChatOk := (GetKeyState($91) and $ffff) <> 0; +{$ENDIF} IF (RChat IN ThisUser.Flags) THEN ChatOk := FALSE; diff --git a/SOURCE/EXECBAT.PAS b/SOURCE/EXECBAT.PAS index 5a96386..fa586db 100644 --- a/SOURCE/EXECBAT.PAS +++ b/SOURCE/EXECBAT.PAS @@ -43,10 +43,12 @@ VAR SaveY: Byte; SavCurWind: Integer; +{$IFDEF MSDOS} {$L EXECWIN} PROCEDURE SetCsInts; EXTERNAL; PROCEDURE NewInt21; EXTERNAL; +{$ENDIF} PROCEDURE ExecWindow(VAR Ok: Boolean; CONST Dir, @@ -83,6 +85,7 @@ BEGIN WindLo := WindMin; WindHi := WindMax; +{$IFDEF MSDOS} {Assure cursor is in Window} INLINE ( @@ -119,6 +122,7 @@ BEGIN GetIntVec($21,CurInt21); SetCsInts; SetIntVec($21,@NewInt21); +{$ENDIF} {$IFDEF Ver70} {Prevent SwapVectors from undoing our int21 change} @@ -136,8 +140,10 @@ BEGIN Window(1,1,MaxDisplayCols,MaxDisplayRows); RemoveWindow(Wind); +{$IFDEF MSDOS} {Restore interrupt} SetIntVec($21,CurInt21); +{$ENDIF} General.CurWindow := SaveCurWindow; General.WindowOn := SaveWindowOn; LastScreenSwap := (Timer - 5); diff --git a/SOURCE/LINECHAT.PAS b/SOURCE/LINECHAT.PAS index 7942efc..8ecb638 100644 --- a/SOURCE/LINECHAT.PAS +++ b/SOURCE/LINECHAT.PAS @@ -74,6 +74,7 @@ BEGIN Delay(600) ELSE BEGIN +{$IFDEF MSDOS} FOR Counter1 := 300 DOWNTO 2 DO BEGIN Delay(1); @@ -84,8 +85,12 @@ BEGIN Delay(1); Sound(Counter1 * 10); END; + NoSound; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO LINECHAT RequestSysOpChat'); Halt; +{$ENDIF} END; - NoSound; IF (KeyPressed) THEN BEGIN Cmd := ReadKey; @@ -364,6 +369,7 @@ BEGIN CLS ELSE IF (S = '/PAGE') THEN BEGIN +{$IFDEF MSDOS} FOR Counter := 650 TO 700 DO BEGIN Sound(Counter); @@ -376,6 +382,10 @@ BEGIN Delay(2); NoSound; UNTIL (Counter = 200); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO LINECHAT SysOpLineChat'); Halt; +{$ENDIF} Prompt(^G^G); END ELSE IF (S = '/BYE') THEN diff --git a/SOURCE/MAIL1.PAS b/SOURCE/MAIL1.PAS index e8abea5..92e4d24 100644 --- a/SOURCE/MAIL1.PAS +++ b/SOURCE/MAIL1.PAS @@ -1223,7 +1223,7 @@ VAR Insert_Char(Char(GKey)); 127 : Delete_Char; - 32..254 : + 32..46, 48..126, 128..254 : Insert_Char(Char(GKey)); 8 : BEGIN IF (CCol = 1) THEN diff --git a/SOURCE/MYIO.PAS b/SOURCE/MYIO.PAS index 5ebcf3e..49fdd75 100644 --- a/SOURCE/MYIO.PAS +++ b/SOURCE/MYIO.PAS @@ -28,8 +28,13 @@ CONST VAR Wind: WindowRec; +{$IFDEF MSDOS} MonitorType: Byte ABSOLUTE $0000:$0449; ScreenAddr: ScreenType ABSOLUTE $B800:$0000; +{$ENDIF} +{$IFDEF WIN32} + MonitorType: Byte = 3; // REENOTE 3=CO80, a safe assumption I think +{$ENDIF} ScreenSize: Integer; MaxDisplayRows, MaxDisplayCols, @@ -529,12 +534,22 @@ END; PROCEDURE SaveScreen(VAR Wind: WindowRec); BEGIN +{$IFDEF MSDOS} Move(ScreenAddr[0],Wind[0],ScreenSize); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO MYIO SaveScreen'); Halt; +{$ENDIF} END; PROCEDURE RemoveWindow(VAR Wind: WindowRec); BEGIN +{$IFDEF MSDOS} Move(Wind[0],ScreenAddr[0],ScreenSize); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO MYIO RemoveWindow'); Halt; +{$ENDIF} END; PROCEDURE SetWindow(VAR Wind: WindowRec; TLX,TLY,BRX,BRY,TColr,BColr,BoxType:Integer); @@ -549,6 +564,7 @@ END; PROCEDURE Update_Logo(VAR Addr1,Addr2; BlkLen: Integer); BEGIN +{$IFDEF MSDOS} INLINE ( $1E/ $C5/$B6/ADDR1/ @@ -603,6 +619,10 @@ BEGIN $49/ $E0/$AA/ $1F); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO MYIO Update_Logo'); Halt; +{$ENDIF} END; END. diff --git a/SOURCE/RENEGADE.PAS b/SOURCE/RENEGADE.PAS index 717eae4..83c93e7 100644 --- a/SOURCE/RENEGADE.PAS +++ b/SOURCE/RENEGADE.PAS @@ -2,7 +2,9 @@ {$I DEFINES.INC} {$ENDIF} +{$IFDEF MSDOS} {$M 35500,0,131072} +{$ENDIF} { R E N E G A D E } { =============== } @@ -230,7 +232,9 @@ END; BEGIN ClrScr; TextColor(Yellow); +{$IFDEF MSDOS} GetIntVec($14,Interrupt14); +{$ENDIF} FileMode := 66; ExitSave := ExitProc; ExitProc := @ErrorHandle; @@ -266,6 +270,7 @@ BEGIN ReadP; +{$IFDEF MSDOS} OvrFileMode := 0; Write('Initializing RENEGADE.OVR ... '); OvrInit('RENEGADE.OVR'); @@ -316,6 +321,7 @@ BEGIN END; END; WriteLn('Initial size of the overlay buffer is '+FormatNumber(OvrGetBuf)+' bytes.'); +{$ENDIF} Init; diff --git a/SOURCE/SPAWNO.PAS b/SOURCE/SPAWNO.PAS index 0325922..f6b74fa 100644 --- a/SOURCE/SPAWNO.PAS +++ b/SOURCE/SPAWNO.PAS @@ -36,11 +36,24 @@ FUNCTION Spawn(ProgName: STRING; Arguments: STRING; EnvSeg: Integer): Integer; IMPLEMENTATION +{$IFDEF MSDOS} {$L SPAWNTP.OBJ} PROCEDURE Init_Spawno(Swap_Dirs: STRING; Swap_Types: Integer; Min_Res: Integer; Res_Stack: Integer); EXTERNAL; FUNCTION Spawn(ProgName: STRING; Arguments: STRING; EnvSeg: Integer): Integer; EXTERNAL; +{$ENDIF} +{$IFDEF WIN32} +PROCEDURE Init_Spawno(Swap_Dirs: STRING; Swap_Types: Integer; Min_Res: Integer; Res_Stack: Integer); +BEGIN + WriteLn('REETODO SPAWNO Init_Spawno'); Halt; +END; + +FUNCTION Spawn(ProgName: STRING; Arguments: STRING; EnvSeg: Integer): Integer; +BEGIN + WriteLn('REETODO SPAWNO Spawn'); Halt; +END; +{$ENDIF} END. diff --git a/SOURCE/SPLITCHA.PAS b/SOURCE/SPLITCHA.PAS index 52fa85d..a3e6d20 100644 --- a/SOURCE/SPLITCHA.PAS +++ b/SOURCE/SPLITCHA.PAS @@ -82,10 +82,11 @@ BEGIN lRGLngStr(15,FALSE); IF (OutCom) THEN Com_Send(^G); - IF (ShutUpChatCall) THEN + IF (ShutUpChatCall) THEN Delay(600) ELSE BEGIN + {$IFDEF MSDOS} FOR Counter1 := 300 DOWNTO 2 DO BEGIN Delay(1); @@ -96,8 +97,12 @@ BEGIN Delay(1); Sound(Counter1 * 10); END; + NoSound; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO SPLITCHA RequestSysOpChat'); Halt; +{$ENDIF} END; - NoSound; IF (KeyPressed) THEN BEGIN Cmd := ReadKey; diff --git a/SOURCE/SYSOP4.PAS b/SOURCE/SYSOP4.PAS index 90b1a4b..80cfc35 100644 --- a/SOURCE/SYSOP4.PAS +++ b/SOURCE/SYSOP4.PAS @@ -223,7 +223,12 @@ VAR END; BEGIN +{$IFDEF MSDOS} Mark(TopHeap); +{$ENDIF} +{$IFDEF WIN32} + // REETODO Prepare to leak memory... +{$ENDIF} Used := NIL; Top := NIL; Bottom := NIL; @@ -396,7 +401,12 @@ BEGIN Cur := NIL; Top := NIL; Bottom := NIL; +{$IFDEF MSDOS} Release(TopHeap); +{$ENDIF} +{$IFDEF WIN32} + // REETODO Likely going to leak memory right about now +{$ENDIF} END; 'D' : BEGIN I := StrToInt(Copy(S,2,9)); @@ -540,7 +550,12 @@ BEGIN UNTIL ((Done) OR (HangUp)); END; END; +{$IFDEF MSDOS} Release(TopHeap); +{$ENDIF} +{$IFDEF WIN32} + // REETODO Likely going to leak memory right about now +{$ENDIF} PrintingFile := FALSE; LastError := IOResult; END; diff --git a/SOURCE/WFCMENU.PAS b/SOURCE/WFCMENU.PAS index 764362b..27d9aa6 100644 --- a/SOURCE/WFCMENU.PAS +++ b/SOURCE/WFCMENU.PAS @@ -309,7 +309,12 @@ BEGIN Com_Send_Str(Liner.Answer); IF (SysOpOn) THEN +{$IFDEF MSDOS} Update_Logo(ANSWER,ScreenAddr[(3*2)+(19*160)-162],ANSWER_LENGTH); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO WFCMENU GetConnection'); Halt; +{$ENDIF} rl := 0; SaveTimer := Timer; @@ -416,10 +421,19 @@ BEGIN IF (SysOpOn) THEN BEGIN +{$IFDEF MSDOS} Update_Logo(WFC,ScreenAddr[0],WFC_LENGTH); - +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO WFCMENU WFCDraw1'); Halt; +{$ENDIF} IF (General.NetworkMode) THEN +{$IFDEF MSDOS} Update_Logo(WFCNET,ScreenAddr[(3*2)+(19*160)-162],WFCNET_LENGTH); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO WFCMENU WFCDraw2'); Halt; +{$ENDIF} LoadURec(ThisUser,1); @@ -589,7 +603,12 @@ BEGIN END; END ELSE +{$IFDEF MSDOS} Update_Logo(WFC0,ScreenAddr[0],WFC0_LENGTH); +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO WFCMENU WFCDraw3'); Halt; +{$ENDIF} END; END; @@ -714,6 +733,7 @@ VAR BeepEnd := FALSE; rl := Timer; REPEAT +{$IFDEF MSDOS} Sound(1500); Delay(20); Sound(1000); @@ -721,6 +741,10 @@ VAR Sound(800); Delay(20); NoSound; +{$ENDIF} +{$IFDEF WIN32} + WriteLn('REETODO WFCMENU BeepHim'); Halt; +{$ENDIF} rl1 := Timer; WHILE (ABS(rl1 - Timer) < 0.9) AND (NOT KeyPressed) DO; UNTIL (ABS(rl - Timer) > 30) OR (KeyPressed);