Listing: 1 (* Release 3.10 *) 2 (*-------------------------------------------------------------------------* 3 * * 4 * SCRIPTPR.MOD - COMMS Toolkit script processor * 5 * * 6 * COPYRIGHT (C) 1988..1992 Clarion Software Corporation. * 7 * All Rights Reserved * 8 * * 9 *--------------------------------------------------------------------------*) 10 11 IMPLEMENTATION MODULE ScriptProcessor; 12 IMPORT CommUtil,FIO,FTSupport,IO,Kermit,Lib,RS232,ScriptCompiler,Storage, 13 Str,Term,Timer,Window,WXModem,XModem,YModem; 14 15 CONST 16 StackSize = 40; 17 18 TYPE 19 StringPtr = POINTER TO String80; ***** ^ undeclared identifier 20 21 VAR 22 CPUFlag, 23 KbdWait,WaitForever : BOOLEAN; 24 IPC,SLnth,StackPtr : CARDINAL; 25 Stack : ARRAY[0..StackSize-1] OF CARDINAL; ***** ^ not supported yet ***** ^ not supported yet 26 SVar : ARRAY[0..9] OF String80; (* Script Variables *) ***** ^ not supported yet ***** ^ undeclared identifier 27 28 (*.............................................*) 29 30 PROCEDURE TerminateScript; 31 VAR 32 flag : ScriptFlags; ***** ^ undeclared identifier 33 BEGIN 34 IF ScriptState<>Off THEN ***** ^ undeclared identifier ***** ^ undeclared identifier 35 ScriptState := Off; ***** ^ undeclared identifier ***** ^ undeclared identifier 36 CommUtil.ScriptFile := ''; ***** ^ not supported yet ***** ^ not supported yet 37 CommUtil.StatusLine(CommUtil.script); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 38 END; 39 WhenProcessing := FALSE; ***** ^ undeclared identifier 40 FOR flag:=Linked TO WaitFor DO ***** ^ FOR needs integer variable and bounds ***** ^ undeclared identifier ***** ^ undeclared identifier 41 Flags[flag] := FALSE; ***** ^ undeclared identifier ***** ^ not supported yet 42 END; 43 END TerminateScript; ***** ^ not supported yet 44 45 (*.............................................*) 46 47 PROCEDURE InitScriptProcessor; 48 BEGIN 49 TerminateScript; ***** ^ not supported yet 50 END InitScriptProcessor; ***** ^ not supported yet 51 52 (*.............................................*) 53 54 PROCEDURE LoadScript(Filename:ARRAY OF CHAR):BOOLEAN; ***** ^ not supported yet 55 BEGIN 56 TerminateScript; ***** ^ not supported yet 57 Lib.Move(ADR(Filename),ADR(CommUtil.ScriptFile),81); ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 58 IF ScriptCompiler.Compile(CommUtil.ScriptFile) THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 59 Lib.Fill(ADR(SVar),SIZE(SVar),0C); ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet 60 IPC := 0; 61 StackPtr:=0; 62 ScriptState := Running; ***** ^ undeclared identifier ***** ^ undeclared identifier 63 CommUtil.StatusLine(CommUtil.script); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 64 RETURN TRUE; 65 ELSE 66 RETURN FALSE; 67 END; 68 END LoadScript; ***** ^ not supported yet 69 70 (*.............................................*) 71 72 PROCEDURE Push(w:CARDINAL); 73 BEGIN 74 IF StackPtr0 THEN 89 DEC(StackPtr); ***** ^ undeclared identifier ***** ^ not supported yet 90 w := Stack[StackPtr]; ***** ^ not supported yet ***** ^ not supported yet 91 ELSE 92 IO.WrStr('Script Error: GOSUB Stack Underflow!!'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 93 IO.WrLn; ***** ^ not supported yet ***** ^ not supported yet 94 TerminateScript; ***** ^ not supported yet 95 END; 96 END Pop; ***** ^ not supported yet 97 98 (*.............................................*) 99 100 PROCEDURE IFetch(VAR op:SHORTCARD); 101 BEGIN 102 op := ScriptCompiler.CodeBuff^[IPC]; ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 103 INC(IPC); ***** ^ undeclared identifier ***** ^ not supported yet 104 END IFetch; ***** ^ not supported yet 105 106 (*.............................................*) 107 108 PROCEDURE IFetchW(VAR op:CARDINAL); 109 VAR 110 lsb,msb : SHORTCARD; 111 BEGIN 112 IFetch(lsb); ***** ^ not supported yet ***** ^ not supported yet 113 IFetch(msb); ***** ^ not supported yet ***** ^ not supported yet 114 op := CARDINAL(lsb)+CARDINAL(msb)*100H; ***** ^ not supported yet ***** ^ not supported yet 115 END IFetchW; ***** ^ not supported yet 116 117 (*.............................................*) 118 119 PROCEDURE IFetchS(VAR p:StringPtr); 120 VAR 121 op : SHORTCARD; 122 BEGIN 123 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 124 IF op<>255 THEN 125 p := ADR(SVar[CARDINAL(op)]); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet 126 SLnth := Str.Length(p^); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 127 ELSE 128 p := ADR(ScriptCompiler.CodeBuff^[IPC]); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 129 SLnth := Str.Length(p^); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 130 INC(IPC,SLnth+1); ***** ^ undeclared identifier ***** ^ not supported yet 131 END; 132 END IFetchS; ***** ^ not supported yet 133 134 (*.............................................*) 135 136 PROCEDURE SetSuccess(Setting:BOOLEAN); 137 BEGIN 138 Flags[Success] := Setting; ***** ^ undeclared identifier ***** ^ undeclared identifier 139 Flags[Failure] := NOT Setting; ***** ^ undeclared identifier ***** ^ undeclared identifier 140 END SetSuccess; ***** ^ not supported yet 141 142 (*.............................................*) 143 144 PROCEDURE Dos(CmdLine:ARRAY OF CHAR); ***** ^ not supported yet 145 BEGIN 146 SetSuccess(FALSE); ***** ^ not supported yet ***** ^ not supported yet 147 END Dos; ***** ^ not supported yet 148 149 (*.............................................*) 150 151 PROCEDURE Run(CmdLine:ARRAY OF CHAR); ***** ^ not supported yet 152 BEGIN 153 SetSuccess(FALSE); ***** ^ not supported yet ***** ^ not supported yet 154 END Run; ***** ^ not supported yet 155 156 (*.............................................*) 157 158 PROCEDURE ChangeEmulation(name:ARRAY OF CHAR); ***** ^ not supported yet 159 BEGIN 160 Str.Caps(name); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 161 IF Str.Compare(name,'VT100')=0 THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 162 Term.EmulateVT100 ***** ^ not supported yet ***** ^ not supported yet 163 ELSIF Str.Compare(name,'VT52')=0 THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 164 Term.EmulateVT52 ***** ^ not supported yet ***** ^ not supported yet 165 ELSIF Str.Compare(name,'ANSI')=0 THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 166 Term.EmulateANSI ***** ^ not supported yet ***** ^ not supported yet 167 END; 168 END ChangeEmulation; ***** ^ not supported yet 169 170 (*.............................................*) 171 172 PROCEDURE RdStr(VAR s:ARRAY OF CHAR; Max:CARDINAL; Echo:BOOLEAN); ***** ^ not supported yet 173 VAR 174 ch : CHAR; 175 ptr : CARDINAL; 176 BEGIN 177 ptr:=0; 178 REPEAT 179 REPEAT 180 ch := IO.RdKey(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 181 UNTIL (ch=CHR(13)) OR ((ch=CHR(8)) AND (ptr>0)) OR ((ch>=' ') AND (ch<=CHR(126)) AND (ptr='0') AND (c<='9') THEN 264 x := x*10+ORD(c)-48; ***** ^ undeclared identifier ***** ^ not supported yet 265 END; 266 END; 267 RETURN x; 268 END Value; ***** ^ not supported yet 269 270 (*..............................................*) 271 272 PROCEDURE Hangup; 273 BEGIN 274 RS232.UnInstall; ***** ^ not supported yet ***** ^ not supported yet 275 Lib.Delay(500); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 276 RS232.Install; ***** ^ not supported yet ***** ^ not supported yet 277 SetSuccess(TRUE); ***** ^ not supported yet ***** ^ not supported yet 278 CommUtil.StatusLine(CommUtil.carrier); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 279 END Hangup; ***** ^ not supported yet 280 281 (*..............................................*) 282 283 PROCEDURE RFlush; 284 VAR 285 c : CHAR; 286 BEGIN 287 WHILE RS232.SerialRead(c,0) DO ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 288 (* flush *) 289 END; 290 END RFlush; ***** ^ not supported yet 291 292 (*..............................................*) 293 294 PROCEDURE NextInstruction; 295 VAR 296 c : CHAR; 297 op : SHORTCARD; 298 i,temp,opw : CARDINAL; 299 sp,sp2 : StringPtr; ***** ^ not supported yet 300 BEGIN 301 Flags[Connected] := RS232.CarrierDetect(); ***** ^ undeclared identifier ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 302 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 303 CASE op OF 304 0 : (*Alarm*) 305 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 306 temp := CARDINAL(op)*2; ***** ^ not supported yet 307 WHILE temp>0 DO 308 CommUtil.WrChar(7C); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 309 Lib.Delay(500); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 310 DEC(temp); ***** ^ undeclared identifier ***** ^ not supported yet 311 END; | 312 1 : (*Assign*) 313 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 314 i:=CARDINAL(op); ***** ^ not supported yet 315 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 316 Lib.Move(sp,ADR(SVar[i]),SLnth+1); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 317 3 : (* Unconditional Jump *) 318 IFetchW(opw); ***** ^ not supported yet ***** ^ not supported yet 319 IPC := opw; | 320 6 : (* Clear Screen using default colours *) 321 Term.ClearScreen; | ***** ^ not supported yet ***** ^ not supported yet 322 7 : (* Clear Screen using new colours *) 323 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 324 Window.TextColor(Window.Color(op MOD 16)); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 325 Window.TextBackground(Window.Color(op DIV 16)); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 326 Term.ClearScreen; | ***** ^ not supported yet ***** ^ not supported yet 327 8 : (* Run program via DOS command interpreter *) 328 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 329 KbdWait := (op=1); 330 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 331 Dos(sp^); | ***** ^ not supported yet ***** ^ not supported yet 332 9 : (* Message *) 333 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 334 i:=0; 335 WHILE iNIL THEN (* it shouldnt be!! *) ***** ^ not supported yet ***** ^ not supported yet 371 Storage.DEALLOCATE(ScriptCompiler.CodeBuff,ScriptCompiler.MaxCodeBytes); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 372 END; | 373 21 : (* PAUSE *) 374 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 375 ScriptState := Pausing; ***** ^ undeclared identifier ***** ^ undeclared identifier 376 Timer.SetAppTimer(CARDINAL(op)); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 377 22 : (* Emulate *) 378 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 379 ChangeEmulation(sp^); | ***** ^ not supported yet ***** ^ not supported yet 380 23 : (* Execute script (chain) *) 381 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 382 IF LoadScript(sp^) THEN ***** ^ not supported yet ***** ^ not supported yet 383 IO.WrStr('Script Error: Script "'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 384 IO.WrStr(sp^); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 385 IO.WrStr('" not found.'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 386 IO.WrLn; ***** ^ not supported yet ***** ^ not supported yet 387 END; | 388 24 : (* Find *) 389 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 390 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 391 i:=CARDINAL(op); ***** ^ not supported yet 392 Str.Caps(SVar[i]); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 393 Str.Caps(sp^); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 394 Flags[Found] := (Str.Pos(SVar[i],sp^)<>0FFFFH); | ***** ^ undeclared identifier ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 395 25,26 : (* Get, MGet *) 396 temp := CARDINAL(op); ***** ^ not supported yet 397 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 398 i:=CARDINAL(op); ***** ^ not supported yet 399 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 400 SLnth:=CARDINAL(op); ***** ^ not supported yet 401 RdStr(SVar[i],SLnth,(temp=25)); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 402 27,28 : (* GetFile, SendFile *) 403 temp := CARDINAL(op); ***** ^ not supported yet 404 IFetch(op); i:=CARDINAL(op); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 405 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 406 FileTransfer((temp=27),i,sp^); | ***** ^ not supported yet ***** ^ not supported yet 407 29 : (* Gosub *) 408 IFetchW(opw); ***** ^ not supported yet ***** ^ not supported yet 409 Push(IPC); ***** ^ not supported yet ***** ^ not supported yet 410 IPC:=opw; | 411 30 : (* Goto *) 412 IFetchW(opw); ***** ^ not supported yet ***** ^ not supported yet 413 IPC:=opw; | 414 31 : (* Hangup *) 415 Hangup; | ***** ^ not supported yet 416 32 : (* Return *) 417 Pop(IPC); | ***** ^ not supported yet ***** ^ not supported yet 418 33 : (* IsFile *) 419 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 420 SetSuccess(FIO.Exists(sp^)); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 421 34 : (* KFlush *) 422 WHILE IO.KeyPressed() DO ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 423 c:=IO.RdKey(); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 424 END; | 425 35 : (* Locate(row,col) *) 426 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 427 temp:=CARDINAL(op); ***** ^ not supported yet 428 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 429 Window.GotoXY(CARDINAL(op)+1,temp+1); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 430 36 : (* Open Logfile *) 431 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 432 Lib.Move(sp,ADR(CommUtil.CaptureFile),SLnth+1); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 433 IF CommUtil.CaptureFile[0]=0C THEN ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 434 CommUtil.CaptureFile:='ODYSSEY.LOG'; ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 435 END; 436 CommUtil.SetLogMode(CommUtil.OpenLogging); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 437 SetSuccess(FIO.IOresult()=0); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 438 CommUtil.StatusLine(CommUtil.capture); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 439 37 : CommUtil.SetLogMode(CommUtil.CloseLogging); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 440 CommUtil.StatusLine(CommUtil.capture); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 441 38 : CommUtil.SetLogMode(CommUtil.SuspendLogging); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 442 CommUtil.StatusLine(CommUtil.capture); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 443 39 : CommUtil.SetLogMode(CommUtil.ResumeLogging); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 444 CommUtil.StatusLine(CommUtil.capture); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 445 40 : (* Send Macro String *) 446 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 447 i:=CARDINAL(op); ***** ^ not supported yet 448 CommUtil.TransmitMacro(i); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 449 41 : IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 450 i:=Value(sp^); ***** ^ not supported yet ***** ^ not supported yet 451 IF i<10 THEN 452 CommUtil.TransmitMacro(i); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 453 END; | 454 42 : (* Load Macro File *) 455 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 456 (*ErrorMessage('Load Macro File command not supported!');*)| 457 43 : CommUtil.Printer(TRUE); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 458 44 : CommUtil.Printer(FALSE); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 459 45 : (* Quit *) 460 Hangup; ***** ^ not supported yet 461 Window.Clear; ***** ^ not supported yet ***** ^ not supported yet 462 HALT; | ***** ^ undeclared identifier 463 46 : RFlush; | ***** ^ not supported yet 464 47 : (* RGet *) 465 IFetch(op); IFetch(op); IFetch(op); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 466 48 : (* Run *) 467 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 468 KbdWait := (op=1); 469 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 470 Run(sp^); | ***** ^ not supported yet ***** ^ not supported yet 471 49,50,51 : (* Empty *); | 472 52 : (* CompareStr - used in SWITCH code *) 473 IFetch(op); ***** ^ not supported yet ***** ^ not supported yet 474 i:=CARDINAL(op); ***** ^ not supported yet 475 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 476 Str.Caps(SVar[i]); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 477 Str.Caps(sp^); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 478 SetSuccess(Str.Compare(SVar[i],sp^)=0); | ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 479 53 : (* When *) 480 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 481 Lib.Move(sp,ADR(WhenString),SLnth+1); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier ***** ^ not supported yet 482 IFetchS(sp); ***** ^ not supported yet ***** ^ not supported yet 483 Lib.Move(sp,ADR(WhenAction),SLnth+1); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier ***** ^ not supported yet 484 WhenProcessing := TRUE; | ***** ^ undeclared identifier 485 54 : (* CWhen *) 486 WhenProcessing := FALSE; | ***** ^ undeclared identifier 487 55 : (* NOP *) | 488 56 : (* NOP *) | 489 ELSE 490 IO.WrStr('Illegal Script Instruction!'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 491 IO.WrLn; ***** ^ not supported yet ***** ^ not supported yet 492 TerminateScript; ***** ^ not supported yet 493 END; (* cases *) 494 END NextInstruction; ***** ^ not supported yet 495 496 (*.............................................*) 497 498 PROCEDURE GetChar(VAR c:CHAR) : BOOLEAN; 499 VAR 500 res : BOOLEAN; 501 BEGIN 502 res := TRUE; 503 c := TransmitString[TxPtr]; ***** ^ undeclared identifier ***** ^ undeclared identifier 504 INC(TxPtr); ***** ^ undeclared identifier ***** ^ undeclared identifier 505 IF c='^' THEN 506 c := TransmitString[TxPtr]; ***** ^ undeclared identifier ***** ^ undeclared identifier 507 INC(TxPtr); ***** ^ undeclared identifier ***** ^ undeclared identifier 508 IF (c>='@') AND (c<='_') THEN 509 c := CHR(ORD(c)-64); ***** ^ undeclared identifier ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet 510 END; 511 ELSIF c='|' THEN 512 c := CHR(13); ***** ^ undeclared identifier ***** ^ not supported yet 513 ELSIF c='~' THEN 514 Lib.Delay(500); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 515 res := FALSE; 516 END; 517 IF TransmitString[TxPtr]=0C THEN ***** ^ undeclared identifier ***** ^ undeclared identifier 518 ScriptState := Running ***** ^ undeclared identifier ***** ^ undeclared identifier 519 END; 520 RETURN res; 521 END GetChar; ***** ^ not supported yet 522 523 (*.............................................*) 524 525 PROCEDURE SingleStep; 526 VAR 527 c : CHAR; 528 BEGIN 529 CASE ScriptState OF ***** ^ undeclared identifier 530 Off : RETURN; | ***** ^ undeclared identifier 531 Running : NextInstruction; | ***** ^ undeclared identifier ***** ^ not supported yet 532 Transmitting : IF GetChar(c) THEN ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet 533 RS232.SerialWrite(c,1); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 534 Lib.Delay(20); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 535 END; | 536 Waiting : IF (NOT WaitForever) AND Timer.AppTimerExpired() THEN ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 537 Flags[WaitFor] := FALSE; ***** ^ undeclared identifier ***** ^ undeclared identifier 538 ScriptState := Running; ***** ^ undeclared identifier ***** ^ undeclared identifier 539 END; | 540 Pausing : IF Timer.AppTimerExpired() THEN ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 541 ScriptState := Running; ***** ^ undeclared identifier ***** ^ undeclared identifier 542 END; | 543 WaitSuccess : Flags[WaitFor]:=TRUE; ***** ^ undeclared identifier ***** ^ undeclared identifier ***** ^ undeclared identifier 544 ScriptState:=Running; | ***** ^ undeclared identifier ***** ^ undeclared identifier 545 END; (* cases *) 546 Timer.UpdateTimer; ***** ^ not supported yet ***** ^ not supported yet 547 END SingleStep; ***** ^ not supported yet 548 549 (*.............................................*) 550 551 BEGIN 552 ScriptState := Off; ***** ^ undeclared identifier ***** ^ undeclared identifier 553 END ScriptProcessor. ***** ^ not supported yet 554 663 errors