home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / PASCAL2.ZIP / PASCAL.A20
Encoding:
Text File  |  1988-01-20  |  156.3 KB  |  4,877 lines

  1. =
  2.  
  3.  
  4.  
  5. From:    Robbie Napier 
  6. To:      Mike Lynch                               Msg #2, 11-Jan-88 12:53pm
  7. Subject: Help
  8.  
  9. RE: using the Timer intr for multitasking.
  10.  
  11. I don't know too much about writing such routines, since I'm just learning
  12. assembler myself, but from my experience (mostly reading), you can't write
  13. such routines in Pascal.
  14.  
  15. Here's why:  DOS isn't reenterent (bet ya' heard that before.)  If you are
  16. running off the clock tick, then you could easily interrupt a DOS function.
  17. Therefore, if you re-call that function, you will hang the machine.
  18.  
  19. Example:  DOS function 2 is running (write a character to the screen,
  20. pretty common).  The timmer ticks, so interrupt 8 is thrown.  Your
  21. interrupt routine calls DOS function 2.  Buddy, you just re-entered a DOS
  22. function and your machine blows up (a slight exaggeration, but it will
  23. probably hang hard).  Now Turbo Pascal v5 doesn't use Function 2 most of
  24. the time, since it does DirectVideo writes, but many other DOS functions
  25. ARE used, and chances are real good that both the interrupted routine and
  26. the interrupting routine will call the same one, somewhere.
  27.  
  28. Someone tell me if there's a way around this.  I know that assembly
  29. programs DO get around the problem by writting their own interrupt handlers
  30. (ie. Sidekick, some print buffers, Prokey), but I don't have any idea how
  31. they go about it.
  32. Boz
  33. --- QuickBBS v2.03
  34.  * Origin: The Chatter Box -- Charlotte, NC (704)552-6971 (1:379/207)
  35.  
  36. *** There is a reply. See #246.
  37.  
  38.  
  39. From:    Robbie Napier 
  40. To:      Mike Copeland                            Msg #3, 11-Jan-88 01:02pm
  41. Subject: Re: Philosophy
  42.  
  43.  
  44. *** There is a reply. See #50.
  45.  
  46.  
  47. From:    Robbie Napier 
  48. To:      John Hughes                              Msg #4, 11-Jan-88 01:05pm
  49. Subject: Re: Copyright
  50.  
  51. Maybe you could answer this question then:
  52.  
  53. How do you go about getting a program into Shareware?  I once tried, but
  54. the sysop of the board told me that you can't just ask for money.  He said
  55. you have to register it, along with some other stuff.  Do you have any info
  56. on this?
  57. Thanx
  58. Boz
  59. --- QuickBBS v2.03
  60.  * Origin: The Chatter Box -- Charlotte, NC (704)552-6971 (1:379/207)
  61.  
  62. *** There is a reply. See #125.
  63.  
  64.  
  65. From:    Robbie Napier 
  66. To:      Tim Geisweit                             Msg #5, 11-Jan-88 01:10pm
  67. Subject: Re: A Little Problem
  68.  
  69. Hey!  How about us "write it as you go" programmers?  I never use
  70. flow-charts, and only make the roughest sketches of psudo-code.  Basically,
  71. I sit down before a blank screen and start typing.  All the prep work, I do
  72. in my head.  I make a skeleton, make it work, then add each feature that I
  73. want.  Occasionally, I go through and look for dead code, since sometimes I
  74. wind up with code that is never run, but not often.  Even the few times
  75. that I set up a whole lot of psudo-code, I never used it.  I just couldn't
  76. write what I wanted without writing actual code.  And its silly to write it
  77. on paper, if you're just going to copy it to the computer (I type MUCH
  78. faster than I write)
  79. Boz
  80. --- QuickBBS v2.03
  81.  * Origin: The Chatter Box -- Charlotte, NC (704)552-6971 (1:379/207)
  82.  
  83. *** There is a reply. See #36.
  84.  
  85.  
  86. From:    Randall Smith 
  87. To:      Lee Hamel                                Msg #6, 14-Jan-89 12:40pm
  88. Subject: Re: Tp 3.0
  89.  
  90.  LH> I would like to know how to do a shell to DOS in Turbo Pascal
  91.  LH> 3.0. I would also like to know how to pick up command line 
  92.  LH> parameters. Lastly, I would like to know how to write stuff over
  93.  LH> the modem port.
  94.  
  95. Lee;  Gently: The answers to some of your questions would be a book but I'll
  96. try.
  97.  
  98.    #1.  If you want to shell to DOS from the TP3 compiler, look for a file
  99. INSTX*.*  This is a zap file that adds a DOS shell option to the TP compiler. 
  100. If you want to shell to DOS from a TP written program look for a program
  101. called EXEC*.*  these two files are both available on Compu$serve in the
  102. Borland forum.  Either of these requires a detailed knowledge of PC machine
  103. language, MS-DOS & the machines interrupt structure (which I have only a
  104. limited knowledge of).  I've used both of these however, and they both work. 
  105.  
  106.    #2.  ParamCount is a pre-defined function returning the number of
  107. command-line parameters. ParamString(n) is a pre-defined function that returns
  108. the n-th command line parameter.
  109.  
  110.    #3.  I'll defer this as I've never done this and have only the haziest idea
  111. of how to go about this.
  112.  
  113. Hope this helps.   
  114.  
  115.  
  116. Later....             Randy.
  117.  
  118. --- Msg V3.2
  119.  * Origin: The Knot in the End of the Thread.    (1:150/511.10)
  120.  
  121.  
  122. From:    Randall Smith 
  123. To:      Dave Goggin                              Msg #7, 14-Jan-89 02:14pm
  124. Subject: Typing Pascal
  125.  
  126.  DG> 4. One- or two-key combinations to specify long words like 
  127.  DG> PROCEDURE, BEGIN, etc, so you don't have to type out the whole word.
  128.  DG> Example: press ^WB and BEGIN appears in the current cursor position.  
  129.  
  130. Many moons ago I used Superkey to develop short-cuts.  Mark a procedure name
  131. move to the place where you want the procedure defined then Alt-P types a
  132. complete procedure block.  Alt-B types a begin-end pair. You get the idea.  I
  133. gave all the Alt-keys definitions.
  134.  
  135.  
  136. Later....             Randy.
  137.  
  138. --- Msg V3.2
  139.  * Origin: The Knot in the End of the Thread.    (1:150/511.10)
  140.  
  141. *** There is a reply. See #249.
  142.  
  143.  
  144. From:    Randall Smith 
  145. To:      Dan Wulff                                Msg #8, 14-Jan-89 02:35pm
  146. Subject: Re: Print routine
  147.  
  148.  
  149. Just my 2 cents worth.  Use caution when checking for printer ready.  I
  150. stubbed my toe on this one.  A Tandy and IBM will return different codes if
  151. the printer is off-line.  I remember that IBM returns Not-Ready, but a Tandy
  152. returns Time-Out.  Hope this helps.
  153.  
  154.  
  155. Later....             Randy.
  156.  
  157. --- Msg V3.2
  158.  * Origin: The Knot in the End of the Thread.    (1:150/511.10)
  159.  
  160. *** There is a reply. See #11.
  161.  
  162.  
  163. From:    Eugene Baral 
  164. To:      Bruce Mahoney                            Msg #9, 11-Jan-88 07:08pm
  165. Subject: Re: Is the Pgm in the Path
  166.  
  167.  
  168.  ->What's the best way to check if a pgm ie: EXEC(
  169.  ->getenv('comspec'), '/c thepgm'); will be in the path. 
  170.  ->Besides checking each path via the findfirst. I've tested
  171.  ->Dosexitcode and Doserror and they're 0 after a EXEC gives
  172.  ->me a 'Program not found' 
  173.  
  174. Try the following:  (paraphrased from Exec_Demo published in the
  175. Jan 17, 1989 issue of PC Magazine (Vol 8 No 1): Languages pg 364)
  176.  
  177. program Exec_FooBar;
  178.  
  179. uses DOS;
  180.  
  181. {  Original code by Neil J. Rubenking }
  182.  
  183. var
  184.   Pgmname, Found : PathStr;
  185.  
  186. begin
  187.   Pgmname := 'FOOBAR.COM';       { Could be any legal file name }
  188.   Found := FSearch(Pgmname,'');  { Look in current directory }
  189.   if Found = '' then             { If no returned value, not in current }
  190.     Found := FSearch(Pgmname, GetEnv('PATH'));
  191.   if Found = '' then             { Still not found === error }
  192.   begin
  193.     WriteLn('Sorry, file ',Pgmname,' not found....Aborting.');
  194.     Halt(1);
  195.   end;
  196.   found := FExpand(Found);
  197.   SwapVectors;                   { Restore original interrupt vectors }
  198.   exec(GetEnv('COMSPEC'),'/C'+Found);  { Execute the program }
  199.   SwapVectors;                   { Restore program's interrupt vectors }
  200.   {  At this point DOSError will contain proper codes }
  201. end.
  202.  
  203. To find out what the FSearch and FExpand functions do, look in your TP5 manual
  204. on pages 267 & 276.  Hope this helps.
  205.  
  206.                                         -= Gene =-
  207.  
  208. --- QuickBBS v2.03
  209.  * Origin: The Philosopher's Stone (#2), Orlando  407-299-3661 (1:363/23)
  210.  
  211. *** There is a reply. See #208.
  212.  
  213.  
  214. From:    Bill Sawyer 
  215. To:      Djoerd De.fost                           Msg #10, 13-Jan-89 12:58pm
  216. Subject: Re: Virus in Pascal 4.0
  217.  
  218. Sure, right, you want to know how to create a virus.  Hey buddy, what boat
  219. to you just get off.  In the U.S. they'd slap the shit out of us just for
  220. helping you do it.  Besides, viruses are inside secrets.  If you're smart
  221. enough to intelligently and benevolently STUDY and CREATE viruses then you
  222. don't need any help.  There are enough "Helpful" hints in all the
  223. newspapers and BBS articles on Viruses.  But otherwise, wise up.  Get half
  224. a brain, and get off this lame-brained, half-assed idea.
  225.  
  226. Adios (and I do mean Adios)
  227.  
  228. Bill Sawyer
  229. --- QuickBBS v2.03
  230.  * Origin: The Philosopher's Stone, Orlando 407-299-3661 (1:363/23)
  231.  
  232. *** There is a reply. See #41.
  233.  
  234.  
  235. From:    Steve Fesperman 
  236. To:      Bruce Mahoney                            Msg #11, 13-Jan-88 07:16pm
  237. Subject: Print routine
  238.  
  239.  
  240. Thanx, I'll try it and see what it does.
  241.  
  242. --- QuickBBS v2.03
  243.  * Origin: The Way Station -- North Charleston, SC -- (1:372/1)
  244.  
  245. *** Part of a conversation.
  246.  
  247.  
  248. From:    Steve Fesperman 
  249. To:      Tomas Gradin                             Msg #12, 13-Jan-88 07:19pm
  250. Subject: Print routine
  251.  
  252.  
  253. Thanx a million for the routine.  I'll give it a try.
  254.  
  255. --- QuickBBS v2.03
  256.  * Origin: The Way Station -- North Charleston, SC -- (1:372/1)
  257.  
  258. *** Part of a conversation.
  259.  
  260.  
  261. From:    Steve Fesperman 
  262. To:      Dan Wulff                                Msg #13, 13-Jan-88 07:21pm
  263. Subject: Print routine
  264.  
  265.  
  266. Howdy Dan,
  267.  
  268. From Charleston, South Carolina, thanks mountains and heaps for the 
  269. routine.  I'll test it and try to give you a status report.
  270.  
  271. Steve
  272.  
  273. --- QuickBBS v2.03
  274.  * Origin: The Way Station -- North Charleston, SC -- (1:372/1)
  275.  
  276. *** Part of a conversation.
  277.  
  278.  
  279. From:    Steve Fesperman 
  280. To:      Klaus Tati                               Msg #14, 13-Jan-88 07:26pm
  281. Subject: Print Routine
  282.  
  283.  
  284. Klaus,
  285.  
  286. Terrific!  Thank you so much for the printer-testing routine.  I'll try 
  287. it as soon as I get off the board.
  288.  
  289. I'm using Turbo Pascal 5.0 (which is, by the way, quite an improvement 
  290. over 4.0--the debugger is a tremendous help to such a dildo as I), and 
  291. have a Panasonic KX-P1090i.  Like yours, I believe, but not as wide.  
  292. Best printer for the money I've ever owned.
  293.  
  294. From Charleston, South Carolina (where it's 80 degrees F at Christmas),
  295. Thanks again,
  296. Steve
  297.  
  298. --- QuickBBS v2.03
  299.  * Origin: The Way Station -- North Charleston, SC -- (1:372/1)
  300.  
  301. *** Part of a conversation.
  302.  
  303.  
  304. From:    Steve Fesperman 
  305. To:      Mark Trammell                            Msg #15, 13-Jan-88 07:37pm
  306. Subject: Pascal D&D
  307.  
  308.  
  309. Mark,
  310.  
  311. If you're interested, I developed a relatively small program to 
  312. auto-generate characters for Chaosium's PENDRAGON.  It's been a while 
  313. since I've used it, and it's probably quite crude, but it did a very 
  314. acceptable job of creating a character from the ground up (including 
  315. his personal characteristics, his tendencies, has nationality and 
  316. religion, and his birth order and beginning possessions).  Rolling a 
  317. character from scratch in this game normally takes about thirty minutes 
  318. or more, but the program would generate it (with a *very slight* bias 
  319. to give more acceptable attributes to avoid wasting time with fatally 
  320. flawed characters) in about one second, and print it out to boot.
  321.  
  322. Steve
  323.  
  324. --- QuickBBS v2.03
  325.  * Origin: The Way Station -- North Charleston, SC -- (1:372/1)
  326.  
  327.  
  328. From:    Steve Fesperman 
  329. To:      Tom Vaughan                              Msg #16, 13-Jan-88 07:40pm
  330. Subject: A Computer Term
  331.  
  332.  
  333. Tom,
  334.  
  335. re FUBAR, that's correct.  It's a military-ism, along the lines of 
  336. SNAFU, meaning Situation Normal, All Fouled (or F**ked) Up.
  337.  
  338. Steve
  339.  
  340. --- QuickBBS v2.03
  341.  * Origin: The Way Station -- North Charleston, SC -- (1:372/1)
  342.  
  343. *** There is a reply. See #38.
  344.  
  345.  
  346. From:    Steve Fesperman 
  347. To:      All                                      Msg #17, 13-Jan-88 07:45pm
  348. Subject: Thanks, and more thanks
  349.  
  350.  
  351. To everyone who has contributed to the enormous response to my request 
  352. for help with a printer-testing routine, I offer my most sincere 
  353. thanks, and only hope I can repay the favor in kind someday.  Failing 
  354. that, I DO have a younger sister...
  355.  
  356. Steve
  357.  
  358. --- QuickBBS v2.03
  359.  * Origin: The Way Station -- North Charleston, SC -- (1:372/1)
  360.  
  361. *** There is a reply. See #122.
  362.  
  363.  
  364. From:    Bertrand Renuart 
  365. To:      All                                      Msg #18, 11-Jan-89 05:23pm
  366. Subject: PASCAL - DOS
  367.  
  368. Hello,
  369. Sorry, my English is weak but I think you will understand ...
  370. .
  371. How can I use Dos function, like read/write files, in my RESIDENT
  372. Turbo PAscal Program ? It's a big problem because DOS is not recursive
  373. (In french : DOS n'est pas récursif ou réentrant ...)
  374. .
  375. It's a big big problem for my but it's very important !
  376. .
  377. .
  378. I hope someone will tell me the solution. Thanks a lot !
  379. .
  380. Bye. Bertrand
  381. --- TBBS v2.0
  382.  * Origin:              We give you the answer.           02-269.5936/3852 
  383.  
  384. *** There is a reply. See #91.
  385.  
  386.  
  387. From:    Rolf Thomassen 
  388. To:      Andy Lester                              Msg #19, 12-Jan-89 10:43am
  389. Subject: Style Debate #9,005
  390.  
  391.  >  MH> PROCEDURE ProcName; BEGIN
  392.  >  MH>   Statement1;
  393.  >  MH>   Statement2;
  394.  >  MH>   END;
  395.  >  MH>
  396.  >  MH> I don't like that. BEGIN-END pairs should match columns, right?
  397.  >
  398.  > Right!  You win the prize, 'cause you agree with me!  :-)
  399.  
  400. Ok where du you put a VAR or CONST or TYPE statement in that procedure you
  401. just have written ? I make my Procedure / Function's like this:
  402.  
  403. Procedure Proc;
  404. Const
  405.   ...
  406. Type
  407.   ...
  408. Var
  409.   ...
  410. Begin
  411.   ....
  412.   If .. = .. Then Begin
  413.     ...
  414.     ...; End
  415.   Else Begin
  416.     ...
  417.   End
  418.   Case .. of
  419.     .. : ...;
  420.     .. : Begin
  421.            ...
  422.            ...
  423.          End;
  424.   Else Begin
  425.     ...
  426.   End;
  427.   Repeat
  428.     ..
  429.     ..
  430.     ..
  431.   Until TwoSundaysInAWeek;
  432.  
  433.   ...
  434. End;
  435.  
  436. And so on, ASO ASO.....
  437.  
  438. Live long and prosper
  439.  
  440.    Rolf Thomassen
  441.  
  442. --- ConfMail V3.31
  443.  * Origin: Thunderbolt CBCS, Denmark [+45-2-951323 #CM] (2:234/11)
  444.  
  445. *** There is a reply. See #22.
  446.  
  447.  
  448. From:    Holger Schurig 
  449. To:      James Macneil                            Msg #20, 13-Jan-89 08:31pm
  450. Subject: Interrupts in 5.0
  451.  
  452. And to Heikki, too:
  453.  
  454. HL> I hope you know what you can and can NOT do in an interrupt:
  455. HL>   - NO I/O
  456. HL>   - NO new, release, dispose, or any of that stuff
  457. HL>   - NO dos calls
  458.  
  459. And no use of strings, because TP will allocate 256 bytes of temporary
  460. storage in a procedure, if you use stringfunctions inside it. And some
  461. programs, like command.com, doesn't have enougth stack for that. To
  462. overcome this, you must set your own stack and reset it prior to your
  463. return from interrupt.
  464.  
  465. --- INFgate 0.7
  466.  * Origin: INFSYS-Development (2:507/628.3)
  467.  
  468.  
  469. From:    Holger Schurig 
  470. To:      All                                      Msg #21, 13-Jan-89 08:31pm
  471. Subject: Style debate #infinitesimal
  472.  
  473. As i have read all the answers to the style_debate_survey, my opinion
  474. is that everybody prefers another style. So the logical question comes
  475. to a program what can change the style. I have seen many pascallisters
  476. and xreffers, some with the option reformat the program. But none
  477. of them give the user a chance to setup his own style of format. Even
  478. on PASFORMA.PAS (found on one disk of Madison Pascal Users Group or so),
  479. which come in source, there is much effort to be done.
  480.  
  481. If i have such things as lex or yacc, i could code it in a hurry, but
  482. without it this will be a bigger project. Maybe someone has enought
  483. spare time (or a tip where such a program can be found).
  484.  
  485. <Style-converter: take this>       <and-change-it-to-my-prefered-style:>
  486. if a = 10                          IF a=10 THEN BEGIN
  487.   then begin                         a := 1;
  488.     a := 1 ;                         INC(b)
  489.     inc (b) ;                      END ELSE BEGIN
  490.     end { then, a was 10 }           DEC(b);
  491.   else begin                         INC(c)
  492.     dec (b) ;                      END;
  493.     inc (c) ;
  494.     end ; { else, a was not 10 }
  495.  
  496. --- INFgate 0.7
  497.  * Origin: INFSYS-Development (2:507/628.3)
  498.  
  499.  
  500. From:    Holger Schurig 
  501. To:      Heikki Levanto                           Msg #22, 13-Jan-89 08:31pm
  502. Subject: Re: Style Debate #9,005
  503.  
  504. HS> PROGRAMM xxxxx; { if i ever write it }
  505. HL>                 ^^^^^^^^^^^^^^^^^^^^^^  And you talk of bad style !
  506.  
  507. Agreed. But you can define style in many ways. One tune his style to
  508. produce wellstructured code, even without hidden gotos like "exit".
  509. The other tune his style to what is needed and looks always to make
  510. clearly readable, fast and small programs. (i think i am such a
  511. programmer). This is the reason i drop irrelevant semicolons before
  512. "end" or extra begin-end in the else-clause of an case-statement.
  513. And the "PROGRAM blah(input,output);" is absolutely unneccesary. Why
  514. not use meaningful filenames for the programs ?  By the way: every
  515. unit from me ends with ".U", i have patched TURBO.EXE so make or build
  516. will consider this. It makes things clearer on your directories.
  517.  
  518. HS> USES xxx,xxx,xxx;
  519. HL> As a matter of style, this list ought to be much longer, and
  520. HL> contain coments.
  521.  
  522. Comments: agreed. Longer: only if neccesary. If i write a small tool,
  523. i will only use my selfwritten UTIL.U. In INFSYS (a mailboxprogramm
  524. written by me), the caselist is longer and written like in your
  525. example.
  526.  
  527. HS> VAR
  528. HS>   xxx : WORD;         { every variable on one line, comment on purpose }
  529.  
  530. I format local the local variable list in a procedure/function the same
  531. way. But i used much global variables in my mailbox (the user data, for
  532. example).
  533.  
  534. HL> If I need a small loop in the main program, I prefer to declare the
  535. HL> variable just before the main program itself, as Turbo allows that.
  536.  
  537. I too.
  538.  
  539. Bye for now, Holger
  540.  
  541. --- INFgate 0.7
  542.  * Origin: INFSYS-Development (2:507/628.3)
  543.  
  544. *** Part of a conversation.
  545.  
  546.  
  547. From:    Gary Godfrey 
  548. To:      All                                      Msg #23, 13-Jan-89 10:19pm
  549. Subject: Text Editor
  550.  
  551. Anyone know where I can get my hands on a simple text editor with
  552. source ? Written in Pascal of course ;-)
  553.  
  554. You can reply here or send netmail to 134/20
  555.  
  556. Gary 
  557.  
  558. --- ConfMail V3.31
  559.  * Origin: EZ Duzzit BBS Calgary (1:134/20)
  560.  
  561. *** There is a reply. See #123.
  562.  
  563.  
  564. From:    Norbert Lange 
  565. To:      Tim Ashman                               Msg #24, 13-Jan-89 10:48pm
  566. Subject: Re: TP3.0
  567.  
  568.  > In TP3.0 is there a way to truncate a file at a certain
  569.  > record number.
  570.  > ie.  a file has 10 records of said length each.  I want
  571.  > to search for a particular record and truncate the file
  572.  > there say at record 6.
  573.  
  574. Yes, simply seek to the desired record, (ie.  seek(FileVar,Record);) and then
  575. do a trunc(FileVar);
  576.  
  577.  
  578.  
  579. ---
  580.  * Origin: ESP BBS: WOC'ing Tall! (Opus 1:134/12)
  581.  
  582. *** There is a reply. See #67.
  583.  
  584.  
  585. From:    Scott Hucke 
  586. To:      Shannon Pope                             Msg #25, 13-Jan-89 06:32am
  587. Subject: Re: Pascal4 & CCDos
  588.  
  589. the turbo 5.0 debugger is worth it. i havnt used 4.0 but the difference
  590. between 5.0 and 3.0 is tremendous. i suggest you evaluate 5.0. i hadnt
  591. programmed in pascal in over two years but the tirbo debugger allowed me to
  592. write a coversion from ascii to extended ascii in about an hour. it really is
  593. good.
  594. scott
  595.  
  596.  
  597. ---
  598.  * Origin: DATADRAFT AutoCAD DATABASE (1-503-232-5641) (Opus 1:105/35)
  599.  
  600. *** There is a reply. See #173.
  601.  
  602.  
  603. From:    Olof Vanderzwan 
  604. To:      All                                      Msg #26, 14-Jan-89 12:36am
  605. Subject: Turbo Pascal
  606.  
  607. Hallo
  608. I am using turbo pascal but not very long
  609. Can some one help me with the following question
  610. How can I convert integers to string
  611. As example I have hours min sec as integers but I like to carry on
  612. with a time string.
  613. Thanks in advange for your assitance 
  614. regards Olof van der zwan
  615. --- ES v2.41
  616.  * Origin: KAYPRO-RBBS :USA-EUROPE-MAIL-SUPPORT (RBBS 2:512/18)
  617.  
  618. *** There is a reply. See #29.
  619.  
  620.  
  621. From:    Kevin Carr @ 930/1 
  622. To:      Everyone                                 Msg #27, 13-Jan-89 12:13pm
  623. Subject: Pascal --> Basic
  624.  
  625. I am looking for a conversion program that converts from Pascal to
  626. Basic (Public Domain, Shareware, OR Commercial!)  To be more specific,
  627. from Turbo Pascal to QuickBASIC.  Thanks!
  628.  
  629. User-To-User PCBoard . 214-492-6565 . 2 Nodes . DASA . DFW BBS List
  630.  
  631. --- ConfMail V4.00
  632.  # Origin: HORIZON_RBBS_(214)881-8346_&_(214)424-3831_<<HST>>_ (8:930/1)
  633.  * Origin: Network Gateway to RBBS-NET  (RBBS-PC 1:10/8)
  634.  
  635. *** There is a reply. See #201.
  636.  
  637.  
  638. From:    Pat Anderson 
  639. To:      Justin Marquez                           Msg #28, 12-Jan-89 04:44pm
  640. Subject: Re: C versus PASCAL
  641.  
  642.  >  LG| Can't help but wonder where Kahn is going to take
  643.  > TP from here.  Can
  644.  >  LG| you think of something lacking in TURBO PASCAL now?
  645.  >  I can't.
  646.  >  LG|
  647.  >
  648. I for one would like to see SELECTIVE importation from units:
  649.  
  650.         USES Xyz;
  651.         FROM Xyz IMPORT ...;
  652.  
  653. If you use multiple third party packages, you will understand why this would
  654. be great - just bring in what you are going to use, without the
  655. Unitname.Identifier and without worrying about identifier duplications. 
  656.  
  657. --- ConfMail V3.31
  658.  * Origin: Snoqualmie Valley Towne Crier (206) 222-6224 (SeaSoftNet)
  659. (1:343/8.11)
  660.  
  661. *** There is a reply. See #34.
  662.  
  663.  
  664. From:    Pat Anderson 
  665. To:      Bruce Mahoney                            Msg #29, 12-Jan-89 05:03pm
  666. Subject: Re: Turbo Pascal
  667.  
  668.  > Try "Mastering Turbo Pascal 4.0" by Tom Swan. There maybe
  669.  > a 5.0 out now?
  670.  
  671. There is a "Mastering Turbo Pascal 5.0" out, but it is by Douglas Herget and
  672. is NOT in a class with Swan's book, which is simply the best.  
  673.  
  674. --- ConfMail V3.31
  675.  * Origin: Snoqualmie Valley Towne Crier (206) 222-6224 (SeaSoftNet)
  676. (1:343/8.11)
  677.  
  678. *** Part of a conversation.
  679.  
  680.  
  681. From:    Mark Hopkins 
  682. To:      Scott Wilson                             Msg #30, 12-Jan-89 07:27pm
  683. Subject: Files
  684.  
  685.  
  686. > This will be a file containing all my users and what I'll want to do is 
  687. >scan it to find the user's record for use in the program, so the question 
  688. >is, is there any faster way of doing this(scanning for a particular user's 
  689. >record) other than reading in each record progressively and checking the 
  690. >search name against User( Var User : UserRec).UserName to see if you've 
  691. >got the right record? Any suggestions would be much appreciated, thanx,
  692.  
  693. My suggestion is a bit involved but could speed your searches up considerably.
  694. The idea is to maintain another file as an index to the file with the actual
  695. records.  The index file would hold record numbers and some key field,
  696. identical to one of the fields in your data file.  The index file should be
  697. sorted on this key.  A record in the index file might look like this:  
  698.   
  699.    IndexRec = RECORD
  700.      RecordNum : Integer;    { number of the record in the data file }
  701.      UserName  : String[20]  { the key field }
  702.    END; { IndexRec }
  703.  
  704. In your program you would load the index file into a two dimensional array,
  705. keeping the record number connected to the user name.  Then when you need to
  706. find a user record you search the array by user name.  When you find the user
  707. name, take the record number associated with it and use it to "Seek" the data
  708. file (look up the "SEEK" procedure in the TP manual).  You will then be
  709. pointed right at the proper record (assuming everything goes correctly).  All
  710. you need to do is read it!  
  711.  
  712. This is a VERY brief description of this concept.  It has been the topic of
  713. discussion here more than once, so I'm sure you'll get other responses. 
  714. Still, if everything is not real clear on it, try to find yourself some
  715. information on indexed file handling.  The concept has been with computers
  716. since the very beginning so there should be lots of information around on it
  717. for any programming language.
  718.  
  719.                             Hope this helps...
  720.  
  721.                                  Mark
  722.  
  723.  
  724. --- msged 1.96S ZTC
  725.  * Origin: SWAT: Blaise-ing Code! SeaSoft Network (1:343/8.13)
  726.  
  727. *** There is a reply. See #31.
  728.  
  729.  
  730. From:    Mark Hopkins 
  731. To:      Scott Wilson                             Msg #31, 12-Jan-89 07:45pm
  732. Subject: Files
  733.  
  734. In a message of <12 Jan 89 20:27:43>, Mark Hopkins (1:343/8.13) writes:
  735.  
  736. >   IndexRec = RECORD
  737. >     RecordNum : Integer;    { number of the record in the data file }
  738. >     UserName  : String[20]  { the key field }
  739. >   END; { IndexRec }
  740.  
  741. In reference to my previous message, it's actually not a very good idea to use
  742. the user's name as a key field.  You want something that is going to be unique
  743. to each record.  I used the UserName field hoping that it would make things a
  744. little clearer.  You could have two users with the same name and, if that were
  745. the case, which ever one was first in the list would always be the one that
  746. was used.  You would never get to the second one.  Anyway, be sure to use a
  747. unique field as your key.
  748.  
  749.  
  750.                                  Mark
  751.  
  752.  
  753.  
  754. --- msged 1.96S ZTC
  755.  * Origin: SWAT: Blaise-ing Code! SeaSoft Network (1:343/8.13)
  756.  
  757. *** Part of a conversation.
  758.  
  759.  
  760. From:    Mark Hopkins 
  761. To:      Matt Franckiewicz                        Msg #32, 12-Jan-89 07:57pm
  762. Subject: Bypassing the main screen
  763.  
  764.  
  765. >By now I know that my version is 5.0 and I don't need to be reminded each 
  766. >time I load it.  Is there a way to bypass the opening screen? 
  767.  
  768. Load the editor, go to the Options menu, choose Environment, set Zoom Windows
  769. to On, escape back to Environment menu, choose Save Options.
  770.   
  771. That should do it.  However, you will be booted up to the editor window only. 
  772. I prefer this as I like to have the full width of the screen visible when
  773. editing.  I assume you're turning the Zoom Windows on via the F5 key since you
  774. are getting 79 columns before the editor scrolls to the side.  This will put
  775. you there when you boot TP.
  776.  
  777.  
  778.  
  779. --- msged 1.96S ZTC
  780.  * Origin: SWAT: Blaise-ing Code! SeaSoft Network (1:343/8.13)
  781.  
  782.  
  783. From:    Mark Hopkins 
  784. To:      Matt Franckiewicz                        Msg #33, 12-Jan-89 08:09pm
  785. Subject: Blocks
  786.  
  787. In a message of <08 Jan 89 12:19:06>, Matt Franckiewicz (1:129/32) writes:
  788.  
  789. >Is there a faster {way to begin and end blocks than the cumbersome Ctrl K 
  790. >B and Ctrl K K?  The old F7 and F8 in TP4.0 were so nice; I can't find 
  791. >anything similar in 5.0.  Is there an{ything?
  792.  
  793. You can remap all of the commands to just about any key combination you want
  794. using the TINST.EXE utility that comes with TP.  In fact, you can reconfigure
  795. just about everything that has to do with the IDE via TINST.
  796.  
  797.  
  798.  
  799. --- msged 1.96S ZTC
  800.  * Origin: SWAT: Blaise-ing Code! SeaSoft Network (1:343/8.13)
  801.  
  802.  
  803. From:    Mark Hopkins 
  804. To:      Justin Marquez                           Msg #34, 12-Jan-89 08:16pm
  805. Subject: C versus PASCAL
  806.  
  807.  
  808. > LG| Can't help but wonder where Kahn is going to take TP from here.  Can
  809. > LG| you think of something lacking in TURBO PASCAL now?  I can't.
  810. > LG| 
  811. >
  812. >       Neither can I.  Hopefully, that won't limit THEIR imagination! 
  813. ><grin>
  814. >Justin Marquez 
  815.  
  816. Real mouse support would be nice.  Moving code around is sure a lot easier
  817. with a mouse!  The add on mouse pakages I've seen are just a little shy of
  818. being very useful.  I think the editor needs to support it in order for it to
  819. be done right.  This is all just in regard to the IDE, otherwise TP can't be
  820. beat!
  821.  
  822.  
  823.                      
  824.  
  825. --- msged 1.96S ZTC
  826.  * Origin: SWAT: Blaise-ing Code! SeaSoft Network (1:343/8.13)
  827.  
  828. *** Part of a conversation.
  829.  
  830.  
  831. From:    Andy Lester 
  832. To:      Kevin Lowey                              Msg #35, 12-Jan-89 07:54pm
  833. Subject: Re: HELLO
  834.  
  835.  CH>hello everybody how's life? 
  836.  
  837.  KL>   I think it's pretty good, but too expensive.  I do like the pictures 
  838.  KL> in it, but then TIME gives better freebies like telephone stations and 
  839.  KL> alarm clocks. 
  840.  
  841. Of course, it doesn't have much of a swimsuit issue, either.
  842.  
  843. And, this entire thread is pointless as Time, Life and SI are ALL owned by 
  844. the same people.
  845.  
  846. Andy
  847.  
  848.  
  849. --- msged 1.95S ZTC
  850.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  851. (1:115/790.2)
  852.  
  853. *** There is a reply. See #92.
  854.  
  855.  
  856. From:    Andy Lester 
  857. To:      Shannon Pope                             Msg #36, 12-Jan-89 07:59pm
  858. Subject: Re: A LITTLE PROBLEM
  859.  
  860.  AL> That's why God created the smiley face. :-)
  861.  
  862.  SP> :-) Doesn't look like a smiley face to me... Where did it originate 
  863.  SP> from?
  864.  
  865. Look at it sideways, with left being the top.  Now it should be a smiley.  
  866. There are a zillion of them...
  867.  
  868. B-)  wearing sunglasses
  869. :-b  sticking out tongue
  870. @:-> Elvis
  871.  
  872. etc, etc, etc...  Where did it originate?  Sheesh, who knows.  They're as old 
  873. as the hills.
  874.  
  875. (Please, let's NOT clog the echo with everyone's favorite smileys.  Please.)
  876.  
  877. Andy
  878.  
  879.  
  880. --- msged 1.95S ZTC
  881.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  882. (1:115/790.2)
  883.  
  884. *** Part of a conversation.
  885.  
  886.  
  887. From:    Andy Lester 
  888. To:      Shannon Pope                             Msg #37, 12-Jan-89 08:01pm
  889. Subject: Re: Word/LongInt
  890.  
  891.  SP> So UCSD uses the USES statement eh?
  892.  
  893. Yup, otherwise it wouldn't know what units to use, now would it? :-)
  894.  
  895. Andy
  896.  
  897.  
  898. --- msged 1.95S ZTC
  899.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  900. (1:115/790.2)
  901.  
  902.  
  903. From:    Andy Lester 
  904. To:      Greg Franklin                            Msg #38, 12-Jan-89 08:02pm
  905. Subject: A Computer Term
  906.  
  907.  GF> What does the prefix "foo" as in "foobar" really stand for?  I know
  908.  GF> that it's merely a dummy name, but what's the story behind it?
  909.  
  910. (This from memory from, probably, _The Hacker's Dictionary_.  A good book to 
  911. read... funny as hell) (Not that hell is particularly funny, mind you...)
  912.  
  913. FUBAR is an acronym from World War II for Fouled Up Beyond Any Recognition.  
  914. Programmers just changed it to foobar.  FOO and BAR are common dummy 
  915. variables, along with BAT and BAZ, although I don't know why.
  916.  
  917. Andy
  918.  
  919.  
  920. --- msged 1.95S ZTC
  921.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  922. (1:115/790.2)
  923.  
  924. *** Part of a conversation.
  925.  
  926.  
  927. From:    Andy Lester 
  928. To:      George Falcon                            Msg #39, 12-Jan-89 08:04pm
  929. Subject: GOTOs
  930.  
  931.  GF> My Pascal professor was a purist and said there's always a way to write 
  932.  GF> a program without GOTOs.  It might be interesting to see an example of 
  933.  GF> there being "literally no other way to do it", as you've said.
  934.  
  935. There is no example.  Anything can be done with repeats or whiles.  For 
  936. instance:
  937. Loop:
  938.   Do_this
  939.   Do_that
  940.   goto loop
  941.  
  942. can be done as
  943.   while false do
  944.     begin
  945.     do_this;
  946.     do_that;
  947.     end;
  948. (The repeat..until is a trivial exercise and is left to the reader. :-)
  949.  
  950. Andy
  951.  
  952.  
  953. --- msged 1.95S ZTC
  954.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  955. (1:115/790.2)
  956.  
  957. *** There is a reply. See #167.
  958.  
  959.  
  960. From:    Andy Lester 
  961. To:      Bill Swenson                             Msg #40, 12-Jan-89 08:08pm
  962. Subject: Re: If/Then/Else
  963.  
  964.  BS> Jonathan,  You do need parentheses.  Try:
  965.  BS>   if (time_left < 10) and (user_name <> 'SYSOP')  then ....
  966.  BS>  
  967.  BS> Note parentheses enclose expressions that evaluate to boolean results.
  968.  BS> The single clause that doesn't need parentheses is an anomaly.
  969.  
  970. Not at all an anomoly, Bill.  Take for example the expression (assuming all 
  971. the variables are boolean):
  972.   if a = b and c = d
  973. It could be interpreted "correctly" (i.e. What I MEANT to say! :-) as
  974.   if (a = b) and (c = d)
  975. but it could also be interpreted syntactically correct a number of ways,  such
  976. as:
  977.   if (a = ((b and c) = d)
  978.  
  979. However, a plain ol' "if a=b" can't be misinterpreted.
  980.  
  981. Andy 
  982.  
  983. --- msg40;36mSubject: Turbo very long integerm 
  984. as if thath=true; taxes=true;
  985. (1:115/790.2)
  986.  
  987.  
  988. From:    Andy Lester 
  989. To:      Djoerd De.fost                           Msg #41, 12-Jan-89 08:18pm
  990. Subject: Virus in Pascal 4.0
  991.  
  992. [flame mode: restricted]
  993.  
  994.  DD> Who can give me some idee's and tips on how to create a virus in Pascal 
  995.  DD> 4.0. If been muddling allong for some time, but haven't had any *GREAT* 
  996.  DD> succes yet. Who can help me?
  997.  
  998. Good!  Glad to hear it!  Keep your destructive inclinations to yourself.
  999.  
  1000. Andy
  1001.  
  1002.  
  1003. --- msged 1.95S ZTC
  1004.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  1005. (1:115/790.2)
  1006.  
  1007. *** Part of a conversation.
  1008.  
  1009.  
  1010. From:    Andy Lester 
  1011. To:      Scott Samet                            
  1012.  
  1013.  
  1014. ---
  1015.  * Origin: THE SMORGAS-BO
  1016. Subject: >16 Files
  1017.  
  1018.    >   fn := concat('c:\tmp\',fn,'.tst');
  1019.  
  1020.  SS> I think you will find the use of a string expression (concat) on the 
  1021.  SS> right side of an assignment operator causes a String[255] temporary to 
  1022.  SS> be allocated. 
  1023.  SS> Not one of TP's finest code generation tricks.
  1024.  
  1025. Hmm, could you rewrite that as, say:
  1026. here available, and size.  I trust the source wifn:=SmallerString(concat('c:\tmp\',fn,'.tst');
  1027.  
  1028. to get around it?
  1029.  
  1030. Andy
  1031.  
  1032.  
  1033. --- msged 1.95S ZTC
  1034.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  1035. (1:115/790.2)
  1036.  
  1037. *** There is a reply. See #109.
  1038.  
  1039.  
  1040. From:    Andy Lester 
  1041. To:      Heikki Levanto                           Msg #43, 13-Jan-89 06:47pm
  1042. Subject: Re: Style Debate #9,005
  1043.  
  1044.  HL> That I like, IF there should be global variables.  If I need a small 
  1045.  HL> loop in the main program, I prefer to declare the variable just before 
  1046.  HL> the main program itself, as Turbo allows that.  I know I sacrifice some 
  1047.  HL> portability, but when I write for myself, I can live with that.  
  1048.  
  1049. I usually write a program like this:
  1050.  
  1051. program blah;
  1052.  
  1053. procedure this;
  1054. ...
  1055.  
  1056. procedure that;
  1057. ...
  1058.  
  1059. procedure mainline;
  1060. var
  1061.   foo,bar,bat...
  1062. begin
  1063. this;
  1064. that;
  1065. ...
  1066. end;
  1067.  
  1068. begin
  1069. mainline;
  1070. end.
  1071.  
  1072. That way, all of my variables in the main part of the program are still local 
  1073. to the main program, and there's no way they can accidentally be modified.
  1074.  
  1075. Also, this is a carryover from Apple Pascal, where we had very intolerant 
  1076. error-checking (intentionally).  Basically it was
  1077.  
  1078. read(fl,record_var); { or some disk I/O }
  1079. if IOResult<>0 then exit(mainline);
  1080.  
  1081. and then outside of mainline, we'd have an error handling routine.  In  Turbo,
  1082. it's not needed (in fact, is pointless) but there you go.
  1083.  
  1084. Andy
  1085.  
  1086.  
  1087. --- msged 1.95S ZTC
  1088.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  1089. (1:115/790.2)
  1090.  
  1091. *** Part of a conversation.
  1092.  
  1093.  
  1094. From:    Andy Lester 
  1095. To:      Heikki Levanto                           Msg #44, 13-Jan-89 06:52pm
  1096. Subject: Design methods
  1097.  
  1098.  HL> P.S.  If the public opinion, and (especially) the moderator expresses 
  1099.  HL> their wish to continu this off-topic discussion here, I might give in.
  1100.  
  1101. I don't see it as being off-topic.  Any others?
  1102.  
  1103. Andy
  1104.  
  1105.  
  1106. --- msged 1.95S ZTC
  1107.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  1108. (1:115/790.2)
  1109.  
  1110.  
  1111. From:    Andy Lester 
  1112. To:      Peter Stewart                            Msg #45, 13-Jan-89 06:57pm
  1113. Subject: Turbo very long integerm 
  1114. as if they were just initialized variables, a la C.
  1115.  
  1116. It's not very good practice, and it's non-portable, but if you gotta do it, 
  1117. at  least comment it.
  1118.  
  1119. Hmm, is there a synonym for non-portable?  (Running off to WordPerfect  
  1120. thesaurus)  Hmm, nothing I really like.  "rooted", "immobile", "permanent", 
  1121. none of which really apply to non-portable code.
  1122.  
  1123. Andy
  1124.  
  1125.  
  1126. --- msged 1.95S ZTC
  1127.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true; 
  1128. (1:115/790.2)
  1129.  
  1130.  
  1131. From:    Matt Franckiewicz 
  1132. To:      Syd Kahn                                 Msg #46, 13-Jan-89 03:28pm
  1133. Subject: Re: error 18
  1134.  
  1135. Coul{d it be that the too many files refers to your source code, not the files
  1136. you are {trying to manipulate?  Too many includes, units, whatever?{
  1137.  
  1138.  
  1139.  
  1140. ---
  1141.  * Origin: THE SMORGAS-BO
  1142.  
  1143. From:    Charles Falconer 
  1144. To:      Dj Murdoch                               Msg #52, 12-Jan-89 10:25pm
  1145. Subject: TP4 (quasi) bug
  1146.  
  1147.  > INTRFC.ARC  ..... TPINTRFC.ARC
  1148.  
  1149. glad to here something exists.  Cannot find it on any local BBSs, and I do not
  1150. use CIS.  Please advise where available, and size.  I trust the source wi
  1151.  
  1152. ---
  1153.  * Origin: Alice's Restaurant (Opus 1:141/488)
  1154.  
  1155.  
  1156. From:    Charles Falconer 
  1157. To:      Kevin Lowey                              Msg #53, 12-Jan-89 10:28pm
  1158. Subject: ANSI vs TP
  1159.  
  1160. Thank you for you list of differences.  I was aware of most of them, but the
  1161. list is a handy reference.
  1162.  
  1163. Unless the standard has been revised, I believe that
  1164.   1.  Identifiers have no maximum, not 63 (or am I inverting the sense
  1165.       of your comment).
  1166.   2.  @ is an optional replacement for ^, not mandatory.
  1167.   3.  I am unaware of any extended new/dispose in ANSI, or in TP.
  1168.       Maybe you are referring to getmem/freemem?
  1169.   4.  PACK/UNPACK can be implemented at the user level quite simply
  1170.       if needed, especially since TP does not pack.  It is quite
  1171.       legal to ignore the PACKED attribute.  The simplest is to
  1172.       write the code embedded in the standard.
  1173.  
  1174. I have implemented semantic replacements for TP4 (as a unit) that correctly
  1175. implement the f^ and get operations for text files.  This allows proper
  1176. implementation of readint(f, integer) and readr(f, real).  These are included
  1177. in the unit (TXTFILES), together with readxint(integer) : boolean;
  1178. readxr(f, real) : boolean, etc.  The readx operators return true for input
  1179. error, rather than aborting.  All operators leave the terminating
  1180. char available by fptr(f) : char (replacement for f^).
  1181.  
  1182. One of the biggest annoyances in TP is the failure to truncate strings to the
  1183. field.  This forces one to write a char by char output loop to do it properly.
  1184.  
  1185. There are several compliance levels, in my eyes, for Pascal (or other
  1186. compiler) systems.  First, the system should accept valid input - any valid
  1187. input.  The absence of get/put, f^, modification of MOD prevent this in TP.
  1188.  
  1189. Compilers can easily check for syntactic errors (undefined, missing
  1190. punctuation, etc).  This is the first level of error checking.
  1191.  
  1192. It is much harder to do context sensitive semantic checking.  Insistence on
  1193. local vars for FOR indices is one such, and fairly easily implemented. Testing
  1194. for assignments to such a var is harder, and few systems do it.  This
  1195. provision is there to allow different for implementations, i.e. there may be
  1196. only a loop counter, whose value has little resemblence to the actual for
  1197. index, the variable may be locally generated on the stack, etc.  This is why
  1198. no reliance is placed on the final value.
  1199.  
  1200. The absence of a blank on eoln in TP is primarily a nuisance in creating
  1201. proper read(integer) etc. operations, which skip leading whitespace, and can
  1202. be solved.  There are pros and cons to the tP method, the main con being that
  1203. it IS NON STANDARD.  One of my implementations provided both worlds by
  1204. differentiating between FILE OF char, and text.  Strictly speaking, text =
  1205. PACKED FILE OF char.
  1206.  
  1207. Similarly, the use of { and (* as equivalents, also } and *), generated much
  1208. heat when the ISO standard was developed.  I disagree with the final result
  1209. anyway, so I cannot really chastise the TP implementation.
  1210.  
  1211. I had not realized that FILE FILE components were not detected by TP. Probably
  1212. goes with the assign operation, because the compiler does not keep track of
  1213. file declarations and self initialize and close.
  1214.  
  1215.  
  1216. ---
  1217.  * Origin: Alice's Restaurant (Opus 1:141/488)
  1218.  
  1219. *** There is a reply. See #119.
  1220.  
  1221.  
  1222. From:    Charles Falconer 
  1223. To:      Ross Wentworth                           Msg #54, 13-Jan-89 12:14am
  1224. Subject: STYLE DEBATE #9,005
  1225.  
  1226.  > Under ISO I would have to list each one separately...
  1227.  
  1228. Not so.  You would have to ENUMERATE each case instance to be used, 
  1229.  
  1230.       CASE ch OF
  1231. '0','1','2','3':
  1232.         dothingsfor0thru3;
  1233.  
  1234. If you look at the TP code generated, you will find that they actually create
  1235. a bunch of IF statements.  This is fine for sparse cases, but very slow for
  1236. long case systems.  The ISO methodology encourages the use of a CASE table, so
  1237. that control transfers immediately to any case. The IF implementation is the
  1238. reason TP picks the first of multiple possiblilities, and the problem is that
  1239. it leaves very obscure bugs.
  1240. I.E. add a new statement at the end, and it is never executed bwcause
  1241. it was included in an earlier range.  It is much more reliable to create, for
  1242. your example, a table of charclass with values (digit, letter, other) and do
  1243.           CASE charclass[ch] OF
  1244. digit:      digitthings;
  1245. letter:     letterthings;
  1246. other:      otherthings;
  1247.             END; (* case *)
  1248.  
  1249. and I consider that much more readable.
  1250.  
  1251.  
  1252. ---
  1253.  * Origin: Alice's Restaurant (Opus 1:141/488)
  1254.  
  1255. *** Part of a conversation.
  1256.  
  1257.  
  1258. From:    Charles Falconer 
  1259. To:      Holger Schurig                           Msg #55, 13-Jan-89 12:22am
  1260. Subject: TP4 bug
  1261.  
  1262. Of course I can't use MOD as a function name - obviously I just banged the
  1263. code out on the terminal.  The compiler would have caught the goof
  1264. immediately.  MOD is a legitimate reserved word.  But the problem and solution
  1265. is evident (I hope).
  1266.  
  1267.  
  1268. ---
  1269.  * Origin: Alice's Restaurant (Opus 1:141/488)
  1270.  
  1271.  
  1272. From:    Charles Falconer 
  1273. To:      Shannon Pope                             Msg #56, 13-Jan-89 12:26am
  1274. Subject: Turbo4 Bug
  1275.  
  1276.  > > dangers of allowing functions to return things ..
  1277.  >
  1278.  > but wouldn't passing an array cause the same problem?
  1279.  
  1280. No, because the array definition is sitting right there in the procedure
  1281. header, and you should be aware of what dynamic storage a recursive procedure
  1282. is using.  Even the function return of a string is not that bad, but turbo
  1283. allocates PERMANENT space on the stack that is never used for such things as
  1284. string compares (who would expect that writing
  1285. IF 'abc' < concat('def', 'ghi') would allocate 256 to 512 bytes of stack
  1286. space!!.  A recursive procedure can well do a string compare, at least now you
  1287. know that the compare should be isolated (for TP) to a separate function. 
  1288. DON'T MANIPULATE strings in recursive code, or the stack overflow may get you.
  1289.  
  1290. To attempt to clear it up:
  1291.  
  1292.   PROCEDURE recurse;
  1293.  
  1294.     BEGIN
  1295.     (* code that does string ops etc *)
  1296.     IF something THEN recurse
  1297.     END;
  1298.  
  1299.   first call                    orig stack ptr -> 1024 bytes allocated
  1300.   first recurse                                -> a stack marker
  1301.                                                   1024 more bytes
  1302.   2nd recurse                                  -> stack marker
  1303.                                                   1024 more bytes
  1304.  
  1305. and those 1024 byte blocks are doing absolutely nothing.  They are only there
  1306. to allow the string ops to work.  Something that handles
  1307. a few recursion levels, such as a tree traversal, can eat up all
  1308. available stack very easily.  The procedure heading above would lead you to
  1309. believe that ONLY the stack marker would be assigned.
  1310.  
  1311. but
  1312.   PROCEDURE x(a : bigarray);
  1313.  
  1314. and the "bigarray" is staring you in the face to warn of possible stack usage.
  1315. Now you can decide to pass it as a VAR if you wish, and either are not going
  1316. to modify it or don't care.  A VAR will cut the stack use down to one pointer
  1317. for bigarray.
  1318.  
  1319.  
  1320. ---
  1321.  * Origin: Alice's Restaurant (Opus 1:141/488)
  1322.  
  1323.  
  1324. From:    Ross Wentworth 
  1325. To:      Ben Lindstrom                            Msg #57, 12-Jan-89 08:22pm
  1326. Subject: Output to ...
  1327.  
  1328.  > readln(f,lin);
  1329.  > writeln(f,lin);
  1330.  
  1331. You're reading the string from the text file and then trying to write it back
  1332. to the same file.  You need to open the printer as a text output device.  For
  1333. example:
  1334.  
  1335. Var
  1336.   F : Text;
  1337.   P : Text;
  1338.   Lin : String;
  1339.   X : Integer;
  1340.  
  1341. Begin
  1342.   Assign(f,'welcome.bbs');
  1343.   Reset(f);
  1344.   Assign(p,'LPT1');
  1345.   Rewrite(p);
  1346.   While Not Eof(f) Do
  1347.   Begin
  1348.     ReadLn(f,Lin);
  1349.     WriteLn(p,Lin);
  1350.   End;
  1351.   Close(f);
  1352.   Close(p);
  1353. End;
  1354.  
  1355.                                     Ross Wentworth
  1356.  
  1357. --- FD 2.00
  1358.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1359.  
  1360. *** There is a reply. See #155.
  1361.  
  1362.  
  1363. From:    Ross Wentworth 
  1364. To:      Djoerd De.fost                           Msg #58, 12-Jan-89 08:27pm
  1365. Subject: Virus in Pascal 4.0
  1366.  
  1367.  > Who can give me some idee's and tips on how to create a
  1368.  > virus in Pascal 4.0. If been muddling allong for some time,
  1369.  > but haven't had any *GREAT* succes yet. Who can help me?
  1370.  
  1371. I'm glad you haven't had any success and hope it stays that way.
  1372.  
  1373.                                     Ross Wentworth
  1374.  
  1375. --- FD 2.00
  1376.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1377.  
  1378. *** Part of a conversation.
  1379.  
  1380.  
  1381. From:    Ross Wentworth 
  1382. To:      Djoerd De.fost                           Msg #59, 12-Jan-89 08:29pm
  1383. Subject: How to write a virus in Pascal.
  1384.  
  1385.  > information on how to build a virus in pascal. I'm NOT
  1386.  > (repeat NOT) intending to release any destructive programs,
  1387.  > compiled or not, to the masses.
  1388.  
  1389. But we have no way of knowing that!
  1390.  
  1391.                                     Ross Wentworth
  1392.  
  1393. --- FD 2.00
  1394.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1395.  
  1396. *** There is a reply. See #93.
  1397.  
  1398.  
  1399. From:    Ross Wentworth 
  1400. To:      Les Fenison                              Msg #60, 12-Jan-89 09:37pm
  1401. Subject: Talking to X00.SYS
  1402.  
  1403.  > dos.  I know there is something that can go in the
  1404.  > Initialization of X00 that effects control  C but I don't
  1405.  > really understand assembler or registers.  Here is what I
  1406.  
  1407. Here is the description of the Initialize Driver function:
  1408.  
  1409.  
  1410.  AH = 04h    Initialize driver
  1411.  
  1412.      Parameters:
  1413.        Entry:  DX = port number
  1414.                     ( BX = 4F50h
  1415.                ES:CX = ^C flag address --- optional )
  1416.        Exit:   AX = 1954h if successful
  1417.                BL = maximum function number supported
  1418.                     (not counting functions 7Eh and above)
  1419.                     BH = rev of FOSSIL doc supported
  1420.  
  1421. This is used to tell the driver to begin operations, and to check that the
  1422. driver is installed.  This function should be called before any other
  1423. communications calls are made.  At this point all interrupts involved in
  1424. supporting the comm port (specified in DX) should be set up for handling by
  1425. the FOSSIL, then enabled.  If BX contains 4F50h, then the address specified in
  1426. ES:CX is that of a ^C flag byte in the application program, to be incremented
  1427. when ^C is detected in the keyboard service routines. This is an optional
  1428. service and only need be supported on machines where the keyboard service
  1429. can't (or won't) perform an INT 1Bh or INT 23h when a Control-C is entered. 
  1430. DTR is raised by this call.  The baud rate must NOT be changed by this call.
  1431. --------------------------------
  1432. You need to the initialize routine a pointer to byte that X00 will increment
  1433. when ^C is pressed.
  1434.  
  1435.                                     Ross Wentworth
  1436.  
  1437. --- FD 2.00
  1438.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1439.  
  1440.  
  1441. From:    Ross Wentworth 
  1442. To:      Bryan Minihan                            Msg #61, 12-Jan-89 09:50pm
  1443. Subject: Colors in Pascal
  1444.  
  1445.  > could possibly get my hands on some. (dog chewed mine...ha
  1446.  > ha...I really lost them in the big move)
  1447.  
  1448. Call Borland and tell them you lost your manual.  Have your disk with the
  1449. serial number handy and they'll ship you a new one for a reasonable price.
  1450.  
  1451.                                     Ross Wentworth
  1452.  
  1453. --- FD 2.00
  1454.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1455.  
  1456.  
  1457. From:    Ross Wentworth 
  1458. To:      Shannon Pope                             Msg #62, 12-Jan-89 09:51pm
  1459. Subject: Re: A LITTLE PROBLEM
  1460.  
  1461.  > :-) Doesn't look like a smiley face to me... Where did it
  1462.  > originate from?
  1463.  
  1464. Try lying down!
  1465.  
  1466.                                     Ross Wentworth
  1467.  
  1468. --- FD 2.00
  1469.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1470.  
  1471. *** Part of a conversation.
  1472.  
  1473.  
  1474. From:    Lawrence Lessing 
  1475. To:      Ron Dexter                               Msg #63, 12-Jan-88 04:29pm
  1476. Subject: Re: bbs's in TP??
  1477.  
  1478.  
  1479. Hmmm... Is this a joke?! Are you the same Ron who runs Soapbox 1? Just
  1480. wondering...
  1481.  
  1482. Anyway, I recommend you call WWIV the Original (BBS) at (213)208-6689. Keep
  1483. trying because it is almost ALWAYS busy... On there, they might still support
  1484. WWIV 3.21d....
  1485.  
  1486. I recommend you use Turbo Pascal 3.0 to compile it because it makes extensive
  1487. use of overlays and chaining files. I have the source code to it and it is
  1488. very packed. That is why the author, Wayne Bell, started the next generation.
  1489. WWIV 4.** 
  1490.  
  1491. Sorry, I really don't have time to do extensive examining of the source code,
  1492. but it seems very easy to convert to TP 5.0 which is what I now use and I LOVE
  1493. it!!
  1494.  
  1495.                                                -> Lawrence <-
  1496. --- QuickBBS v2.03
  1497.  * Origin: Torrance BBS * Los Angeles, CA * (213) 370-9027 * (1:102/345)
  1498.  
  1499. *** There is a reply. See #228.
  1500.  
  1501.  
  1502. From:    Ross Wentworth 
  1503. ven't had a chance to look at it yet).  Let me ihael                  Msg #64, 13-Jan-89 06:43pm
  1504. Subject: Re: Style Debate #9,005
  1505.  
  1506.  >  MF> CASE Choice OF
  1507.  >  MF>   'Y' : Answer_Is_Yes;
  1508.  >  MF>   'N' : Answer_Is_No;
  1509.  >  MF> END;
  1510.  >
  1511.  > Only problem is that code like that eats up code like
  1512.  > crazy, since it's gotta  make a lookup table up to the
  1513.  > highest value in the list, so you're creae 4.0, just c with
  1514.  > values from 1..ORD('Y').  Codewise, the double IF is much
  1515.  
  1516. Are you talking about Turbo Pascal?  I just did a quick check with TP 5.0 and
  1517. found that it dos NOT use a lookup table.  A case statement is just like a
  1518. bunch of IF/THEN statements.
  1519.  
  1520.                                     Ross Wentworth
  1521.  
  1522. --- FD 2.00
  1523.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1524.  
  1525. *** Part of a conversation.
  1526.  
  1527.  
  1528. From:    Ross Wentworth 
  1529. To:      Andy Lester                              Msg #65, 13-Jan-89 06:45pm
  1530. Subject: Re: Style Debate #9,005
  1531.  
  1532.  >    name : string           <======!!!!
  1533.  >    age  : integer;
  1534.  >    sex  : char
  1535.  >    SocSecNum : string[9]
  1536.  >
  1537.  > which will, of course, blow up the compiler, since it NOW
  1538.  > expects the ; after  char.
  1539.  
  1540. I think you left a semicolon off after the "name : string" statement.
  1541.  
  1542.                                     Ross Wentworth
  1543.  
  1544. --- FD 2.00
  1545.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1546.  
  1547. *** Part of a conversation.
  1548.  
  1549.  
  1550. From:    Ross Wentworth 
  1551. To:      Andy Lester                              Msg #66, 13-Jan-89 06:47pm
  1552. Subject: Re: FILLCHAR
  1553.  
  1554.  > Something like:
  1555.  >   Fillchar(byte_array,sizeof(byte_array),0);
  1556.  > is pretty darn portable.  It should run on anything,
  1557.  > regardless of whether  it's a PC or not.
  1558.  
  1559. FILLCHAR is not part of the ISO standard so is NOT portable to other
  1560. compilers.  Of course, ISO Pascal is so feeble I wouldn't want to program in
  1561. it.
  1562.  
  1563.                                     Ross Wentworth
  1564.  
  1565. --- FD 2.00
  1566.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1567.  
  1568. *** There is a reply. See #73.
  1569.  
  1570.  
  1571. From:    Ross Wentworth 
  1572. To:      Tim Ashman                               Msg #67, 13-Jan-89 06:57pm
  1573. Subject: TP3.0
  1574.  
  1575.  > don't think there is an answer but I'll ask anyway.    In
  1576.  > TP3.0 is there a way to truncate a file at a certain record
  1577.  > number.
  1578.  
  1579. This procedure (written under TP 5.0!) will truncate a file to the current
  1580. file position.  That is, the current position will be made into the end of
  1581. file (EOF) and all data following it will be lost.  It shouldn't be too
  1582. difficult to modify it for TP 3.0.
  1583.  
  1584.  
  1585. Procedure Truncate(Var F);
  1586.  
  1587. Var
  1588.   Handle : Word Absolute F;
  1589.   Regs   : Registers;
  1590.  
  1591. Begin
  1592.   With Regs Do
  1593. 33m    Charles Falconer 
  1594. To or 96 or even := 0;
  1595.     MsDos(Regs);
  1596.   End;
  1597. End;
  1598.  
  1599.                                     Ross Wentworth
  1600.  
  1601. --- FD 2.00
  1602.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  1603.  
  1604. *** Part of a conversation.
  1605.  
  1606.  
  1607. From:    Tony Shelton 
  1608. To:      All                                      Msg #68, 13-Jan-89 10:50pm
  1609. Subject: .GIF
  1610.  
  1611. If I remember right, someone on this echo was looking for source code for
  1612. encoding GIF files.  I found a file here in the Dallas area that purports to
  1613. be what you want (I haven't had a chance to look at it yet).  Let me ihael 
  1614. To:      Finn Stadel                              Msg #70, 13-Jan-89 08:51pm
  1615. Subject: Re: Turbo pascal 4
  1616.  
  1617. ->  One bad thing about PASCAL I think is the limited no of
  1618. -> straing handleing function that exist.. no sliceing or
  1619.    It does have UPCASE (convert lower or upper-case to upper).  However,
  1620. since you do say you have 4.0, just create a unit of often used string
  1621. functs/procs and do a USES in your programs that need 'um, and you won't
  1622. 55pm
  1623. Subject: Re: 3mSubject:/p's.
  1624.  
  1625. ->  What if an error occrs, such as f.i. end of file, when
  1626. -> reading data.
  1627. ->  One has to check for all errors, each time one does
  1628.     I don't have the 4.0 docs, but I know 5.0 has a general error handler
  1629. for each unit and such like.  Look into the units section of the manual.
  1630.  
  1631. -> if the user presses ESC to 'get back' or some errounious
  1632. -> data is entered etc. ect. ?
  1633.     Sorry, but the way you mentioned is about the only way to do it w/
  1634. Pascal.  Or, you could write an AL program which pulls so much out of the
  1635. stack and then calls the procedure/function/program you wanted to exit
  1636. to.....(grin)
  1637.  
  1638. ->  cheers all, and remember:  Keep Murphy out of your
  1639. -> programs, he's got nothing to do in there.. !
  1640.     What?  Keep him out?  I just train him to do the wrong thing at the
  1641. wrong time so that it comes out right; you know, a double-negative makes a
  1642. positive!! (doesn't it?)
  1643.  
  1644. ==--->Doug<---==
  1645. --- QuickBBS v2.03
  1646.  * Origin: ]≡[ The Pascal Programmer's Club ]≡[ (918) 438-2749 (1:170/403)
  1647.  
  1648. *** There is a reply. See #108.
  1649.  
  1650.  
  1651. From:    Doug Michael 
  1652. To:      Joerg Hegermann                          Msg #71, 13-Jan-89 09:08pm
  1653. Subject: Re: HELP !!!!!!!!!
  1654.  
  1655. -> I did alraedy split it up in 5 units each about 30 Kb of
  1656. -> source.
  1657.    Are you using 4.0 or 5.0?  4.0 doesn't care how many units you use, you
  1658. can only have 65536 bytes of code.
  1659. ==--->Doug<---==
  1660. --- QuickBBS v2.03
  1661.  * Origin: ]≡[ The Pascal Programmer's Club ]≡[ (918) 438-2749 (1:170/403)
  1662.  
  1663.  
  1664. From:    Doug Michael 
  1665. To:      Ben Lindstrom                            Msg #72, 13-Jan-89 09:16pm
  1666. Subject: Re: PRoblem
  1667.  
  1668. ->  How do I access the modem without using 3milloin bytes??
  1669. ->  I can't seem to write of read from the modem.. I am
  1670. -> writeing an online game.. And I need runtunes for that and
  1671.     Check out FOSSIL's, you can find many different ones all over the nets.
  1672. In fact, there are many Turbo Pascal interfaces for FOSSIL's floating
  1673. around too.  I would suggest looking for them in some of your local boards.
  1674. The only FOSSIL I can tell you about is X00.SYS, someone else will have to
  1675. give you the names of others.
  1676. ==--->Doug<---==
  1677. --- QuickBBS v2.03
  1678.  * Origin: ]≡[ The Pascal Programmer's Club ]≡[ (918) 438-2749 (1:170/403)
  1679.  
  1680. *** There is a reply. See #183.
  1681.  
  1682.  
  1683. From:    Charles Falconer 
  1684. To or 96 or even 19200 baud modem,
  1685. because I could not use it anywhere.
  1686. Besides a c128 can't transmit faster that 1200 :-)
  1687. Here's something for you. A wyse 60 terminal transmits and recieves
  1688. at 38,400 baud Beat that!
  1689. Pat
  1690. Responsive flames are welcome, since I started by sticking my
  1691. proboscus in. (It's size rivals the star of this net :-) )
  1692.  
  1693.  
  1694. ---
  1695.  * Origin: VAXCat, Merrimack, NH; Home of the Black VAXCat; (603)424-0923
  1696. (Opus 1:132/777)
  1697.  
  1698. *** There is a reply. See #75.
  1699.  
  1700.  
  1701. From:    David Vins 
  1702. To:      Patrick Farrell                          Msg #75, 14-Jan-89 03:48pm
  1703. Subject: Re: 300 BAUD
  1704.  
  1705.   Bull a C-128 can't transmitt faster than 1200!!!  I have one, and I hooked
  1706. up my US Robotics modem to it, and it worked fine, special thanx to Paperclip
  1707. III, and I have access to 2400 on both my IBM and C-128.
  1708. --- QuickBBS v2.03
  1709.  * Origin: The Outpost │ Nashua NH »HST« (1:132/113)
  1710.  
  1711. *** Part of a conversation.
  1712.  
  1713.  
  1714. From:    David Vins 
  1715. To:      Patrick Farrell                          Msg #76, 14-Jan-89 03:55pm
  1716. Subject: Re: 3mSubject: Thanks..
  1717.  
  1718. I got it to work.. I had the CRT unit up.. when I did not need it..
  1719.   
  1720. Do either on of you know any TURBO PASCAL modem procedure?
  1721. I can't get it to go to the modem..
  1722.   
  1723. Dave will you procedure if modified would send chars to a BBS that took chars
  1724. from BOIS work? Or would I be better just writing Procedures to go to the
  1725. modem.. (This is an online game I am writing)..
  1726.   
  1727. Thanks again..
  1728. - Ben Lindstrom
  1729.  
  1730. --- ConfMail V4.00
  1731.  * Origin: Late Night With Norton St. Louis Park, MN (612)925-1809 (1:282/19)
  1732.  
  1733.  
  1734. From:    Ben Lindstrom 
  1735. To:      Doug Michael                             Msg #80, 16-Jan-89 07:46pm
  1736. Subject: Modem Procedures..
  1737.  
  1738. Ok.. I was look more like a file that had Modem procedures but
  1739. I will dig up all I can and X00.SYS. And how to use it..
  1740. - Ben Lindstrom
  1741.  
  1742. --- ConfMail V4.00
  1743.  * Origin: Late Night With Norton St. Louis Park, MN (612)925-1809 (1:282/19)
  1744.  
  1745.  
  1746. From:    Bill Sappington 
  1747. To:      Andy Lester                              Msg #81, 15-Jan-89 11:32am
  1748. Subject: Re: FILLCHAR
  1749.  
  1750. Read about it in one of Duntemann's books.  I will find the page number at a
  1751. later date. I do not beleive FILLCHAR is supported by either ISO pascal or any
  1752. of the other implementations of PASCAL. However I will bow to the challange
  1753. and look it up..
  1754.  
  1755. Bill......
  1756. --- TBBS v2.0
  1757.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  1758.  
  1759. *** This is a reply to #73.
  1760.  
  1761.  
  1762. From:    Bill Sappington 
  1763. To:      Sam Almassri                             Msg #82, 15-Jan-89 11:48am
  1764. Subject: Re: 'PASCAL LESSON'
  1765.  
  1766. Well ya kinda hafta use your imagination with pascal.  It contains 2 calls for
  1767. noise.  They are as follows:
  1768.  
  1769. Sound(400) ; --- turn on the noise at 400hz
  1770. NoSound    ; --- turn off the noise.
  1771.  
  1772. That is the entire thing in a nut shell.
  1773.  
  1774. Waht you can do is stuff like below :
  1775.  
  1776. for a := 1 to 1000 do
  1777.    Begin
  1778.      Sound(a) ;     delay(random(1000));
  1779.      nosound;
  1780.    end;
  1781.  
  1782. That should make some interesting noise.  Just use your imagination to change
  1783. the off time and the on time and the frequency of the noise.
  1784.  
  1785. Bill.......
  1786. --- TBBS v2.0
  1787.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  1788.  
  1789.  
  1790. From:    Bill Sappington 
  1791. To:      Detlef Kloeser                           Msg #83, 15-Jan-89 11:54am
  1792. Subject: Re: TURBO PASCAL 5.0
  1793.  
  1794. I highly recomend three books.  Complete Turbo Pascal by Duntemann as it
  1795. covers up to version 3.0 and provides a wealth of knowlage and examples. 2ndly
  1796. I recommend the follow on to that book called rats I cant remember the name !
  1797. any way it is also by duntemann and contains just about everthing you ever
  1798. wanted to know about assembler interfaceing.  Thirdly I recommend Tom Swains
  1799. book. It rounds everything out and makes an excenelnt refernce...
  1800. --- TBBS v2.0
  1801.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  1802.  
  1803. *** There is a reply. See #124.
  1804.  
  1805.  
  1806. From:    Dave Goggin 
  1807. To:290/1.12)
  1808.  
  1809. *** There is a reply. S.12)
  1810.  
  1811. *** Part ofn-89 03:53pm
  1812. Subject: REPEAT SYNTAX
  1813.  
  1814. remember you can format _ANY_ way you want in pascal.  just remember, that
  1815. except in writelns, that a EoLn=comment=space, and therefore, wherever a space
  1816. is allowed, an EoLn is also.
  1817. --- TBBS v2.0
  1818.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  1819.  
  1820.  
  1821. From:    Dave Goggin 
  1822. To:      Heikki Levanto                           Msg #85, 15-Jan-89 04:01pm
  1823. Subject: SPACING
  1824.  
  1825. OK, here's my opinion:
  1826.    
  1827.    
  1828. IF a=1
  1829.    THEN Inc (a);
  1830.    
  1831. no questions asked.
  1832. --- TBBS v2.0
  1833.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  1834.  
  1835.  
  1836. From:    Dave Goggin 
  1837. * Origin: Inflection Point       Opus Brixius (2me you have to tell turbo pascal what kind of pinter you are 
  1838.  > uSubject: BASIC
  1839.  
  1840.   I agree.  I've programmed so much in Pascal, etc, that I can't even write an
  1841. unstructures 'spagetti' program.  I have to write lost of stuff like:
  1842.     
  1843. 10 CALCULATE=300
  1844. .
  1845. .
  1846. 128 GOSUB CALCULATE
  1847. otherwise I'm lost!!!
  1848. --- TBBS v2.0
  1849.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  1850.  
  1851.  
  1852. From:    Peter Stewart 
  1853. To:      Jon Witmer                               Msg #87, 14-Jan-89 02:11pm
  1854. Subject: Re: <WIRTH> AND <STYLE DEBATE #9,005>
  1855.  
  1856.  > Are you sure - I have read books by him and I thought I
  1857.  > read that it rhymed with hurt. Assuming you are correct, I
  1858.  > can't think of any word that evens sounds like that!
  1859.  
  1860. Yes, I am sure. 'Veert' with a short 'ee', ask anyone who speaks German.
  1861.  
  1862. --- FD 2.00
  1863.  * Origin: Howth Castle and Environs (1:135/20.2)
  1864.  
  1865. *** This is a reply to #69.
  1866.  
  1867.  
  1868. From:    Peter Stewart 
  1869. To:      Steve Butler                             Msg #88, 14-Jan-89 02:24pm
  1870. Subject: Re: Copyright (C) ...
  1871.  
  1872.  >  > Is my memory as bad as usual, or has the (US) law
  1873.  >  > changed ??
  1874.  >
  1875.  > I'm not able to check your memory (no parity errors
  1876.  > detected on this end); BUT, the US did change the law about
  1877.  > a decade ago.
  1878.  
  1879. Even more recently, in December '88, the US signed the Bern Convention,
  1880. increasing copyright protection.
  1881.  
  1882. --- FD 2.00
  1883.  * Origin: Howth Castle and Environs (1:135/20.2)
  1884.  
  1885.  
  1886. From:    Bruno De.montis 
  1887. To:      Jon Guthrie                              Msg #89, 11-Jan-89 08:01pm
  1888. Subject: Re: MLC VERSUS PASCAL
  1889.  
  1890.  > It has been
  1891.  > my experience that poorly coded assembly language always beats well
  1892.  > coded (and highly optimized - not that I've had any real experience with
  1893.  > highly optimized compilers) HLL code.
  1894.  
  1895. Mine too...
  1896.  
  1897.  > Higher level
  1898.  > languages were first invented so that the programmer could ignore
  1899.  > irrelevant detail.  Since the programmer doesn't have as much to worry
  1900.  > about, his work goes faster with a HLL.  Also, usually, the execution
  1901.  > time saved by a hand-coded assembly program is not worth the extra
  1902.  > programmer effort.
  1903.  
  1904. And that's why I don't bother to write anything in assembler BUT small,
  1905. often-used, time-critical routines.
  1906.  
  1907. For screen updating, string processing, and such, I sometimes find it
  1908. necessary to use assembly. But I code at the same speed in Pascal or C
  1909. and in assembly language (in lines perw about rewriting the standard units so that the          <BdM>
  1910.  
  1911. --- ConfMail V4.00
  1912.  * Origin: Inflection Point       Opus Brixius (2:290/1.12)
  1913.  
  1914. *** There is a reply. S.12)
  1915.  
  1916. ter than some professionals.
  1917.  
  1918. True enou** There is a reply. See #203.1;40;32m
  1919. To:      Bertrand Renuart                         Msg #91, 12-Jan-89 10:12pm
  1920. Subject: Re: PASCAL - DOS
  1921.  
  1922. Hello Bertrand,
  1923.  
  1924. There are several ways to know if it is safe to interrupt DOS and use it.
  1925. The safer one I found is to trap Int 28h. The handler may call all DOS
  1926. functions except 00h thru 0Ch (and 50h/51h under DOS 2.xx).
  1927.  
  1928. If it's not enough for you (and as you are in Brussels), call INFOBoard
  1929. (2:290/1) and download file INTER88.ARC. You'll find in it a lot of stuff
  1930. about INT calls, and some undocumented (by MS, at least) ways to know if
  1931. you can use DOS I/O.
  1932.  
  1933. Hope this helps you,
  1934.  
  1935. <BdM>
  1936.  
  1937. --- ConfMail V4.00
  1938.  * Origin: Inflection Point       Opus Brixius (2me you have to tell turbo pascal what kind of pinter you are 
  1939.  > using.
  1940.  > 
  1941.  > I know you have to do that in c.
  1942.  
  1943. When you are used to C you wil have no problems with pascal pointers. They are
  1944. allway HUGE pointers. This means FOUR byte pointers with segment and offset
  1945. part, where the offset part is allways between 0 and 15. There is no way to
  1946. change this. I think you can fiddle with the pointers to make them non
  1947. normaliced and still make things work but TURBO PASCAL allways gives you HUGE
  1948. pointers.
  1949.  
  1950. Greetings from Denmark.
  1951.  
  1952.  
  1953. --- msged 1.943S TC (JW)
  1954.  * Origin: Wolf's Point. Nærum, Denmark.  (fidonet 2:230/30.10)
  1955.  
  1956. *** There is a reply. See #135.
  1957.  
  1958.  
  1959. From:    Jesper Wolf 
  1960. To:      John Wolter                              Msg #95, 11-Jan-89 10:24pm
  1961. Subject: Accessing clock
  1962.  
  1963. Hello John.
  1964.  
  1965.  > Can anyone tell a self-taught Pascal programmer who just discovered Turbo 
  1966.  > Pascal how to access the system clock?  Thanks. 
  1967.  
  1968. for accesing the system clock you have to include the dos unit. In this unit
  1969. there are two procedures:
  1970.  
  1971. procedure GetTime(var Hour, Minute, Second, Sec100 : word);
  1972.  
  1973. procedure SetTime(Hour, Minute, Second, Sec100 : word);
  1974.  
  1975. The first returns the system time to you, the second one set the system time
  1976. to the values you supply in the call.
  1977. If you are using Turbo 3 these procedures are defined in a file called
  1978. something like ms-doslib.pas .
  1979.  
  1980. Here is a simple example usind turbo 4:
  1981. Program test;
  1982. uses Dos;
  1983. var
  1984.        t,m,
  1985.        s,hs    : word;
  1986. begin
  1987.  { get the system time }
  1988.  gettime(t,m,s,hs);
  1989.  { write the time to the screen }
  1990.  writeln('The time is now ',t:2,':',m:2,':',s:2,',',hs:2);
  1991.  { thats all folks }
  1992. end.
  1993.  
  1994. Hope you can use this.
  1995.  
  1996. Greetings From Denmark.
  1997.  
  1998.  
  1999.  
  2000.  
  2001.  
  2002. --- msged 1.943S TC (JW)
  2003.  * Origin: Wolf's Point. Nærum, Denmark.  (fidonet 2:230/30.10)
  2004.  
  2005. *** There is a reply. See #136.
  2006.  
  2007.  
  2008. From:    Jesper Wolf 
  2009. To:      Lou Garner                               Msg #96, 11-Jan-89 10:33pm
  2010. Subject: C versus PASCAL
  2011.  
  2012. Hello Lou.
  2013.  
  2014.  > Can't help but wonder where Kahn is going to take TP from here.  Can > you think of something lacking in TURBO PASCAL now?  I can't.
  2015.  
  2016. What about more than 64 kilobytes of data? (how about 64 KB pr unit ?)
  2017. What about realy huge arrays?
  2018. What about speeding up the 8087 emulation? (It really sucks)
  2019. What about procedures with a variable number of parameters, like write (..) ?
  2020. What about cleaning up the code generation so all the jmp 2 can be avoided?
  2021. How about rewriting the standard units so that the          Msg #103, 11-Jan-89 11:36am
  2022. Subject: Re: Pascal Programming BBS
  2023.  
  2024.  > Believ(ON/OFF) from DOS, but when I use unit CRT I caneading ! -----[K 
  2025. True enou** There is a reply. See #203.
  2026.  
  2027.  
  2028. From:    Heikki Levanto 
  2029. To:      Djoerd De.fost                           Msg #104, 11-Jan-89 12:27pm
  2030. Subject: Virus in Pascal 4.0
  2031.  
  2032. > Who can give me some idee's and tips on how to create a virus in Pascal
  2033. > 4.0. If been muddling allong for some time, but haven't had any *GREAT*
  2034. > succes yet. Who can help me?
  2035.  
  2036. > I'm NOT (repeat NOT) intending to release any destructive programs, compiled
  2037. > or not, to the masses.
  2038.  
  2039. I could tell you quite many things I have been thinking of, BUT I'M NOT GOING
  2040. TO !
  2041.  
  2042. You say you have on bad intentions, but how should I trust you ?  And even if
  2043. I did, there are hundreds of other people reading this echo ( thous[1;40;32m
  2044. To:      Doug Micressed. I bet  at least blow the thing up by
  2045. accident. The best way to keep a virus from not getting loose is not to write
  2046. it.
  2047.  
  2048. I have no authority on this, so I just suggest communications Echo...
  2049. Incidently, the curre
  2050.  OV> Hallo
  2051.  OV> I aen, or instructing on how to make a
  2052. virus 'better', this person should excluded from all fidonet activity for a
  2053. while.  But this I leave for the moderator and the sysop community to decide.
  2054. Personally I just want to keep the dingBoard - YooHoo 2 Ya'll 2 - (713)821-4148 (1:um : string[9]
  2055.  
  2056.  R[K 
  2057. yours truly
  2058.  
  2059. │  ┌─ ─┐
  2060. r[K└─ ─┘ ─┘  Heikki Levanto
  2061. Levanto Software Development
  2062.  
  2063.  
  2064.  
  2065.  
  2066. --- msged 1.95S ZTC
  2067.  * Origin: CONSqt 
  2068.  SF> for help with e Development (2:230/22.28)
  2069.  
  2070. *** Part of a conversation.
  2071.  
  2072.  
  2073. From:    Per Holm 
  2074. To:      George Butts                             Msg #105, 14-Jan-89 01:39am
  2075. Subject: opus user list
  2076.  
  2077. Hi George,
  2078.  
  2079.  >  CD> with src whereas 102 doesn't have the src. I've also been trying to 
  2080.  
  2081. I do think that Colton read the .5rc (FIVE R C) as Src.
  2082.  
  2083.  >   OpInt102.Arc is available for FREQ from 1:152/2 The Buffer Board.  This 
  2084.  > is, alas, the 4.0 version.  I have tried to FREQ the Opint102.5rc file 
  2085.  > from Denmark with not luck.  I connect at 2400, but can't establish a 
  2086.  > good link. 
  2087.  
  2088. The TP5 version might be avaliable at either 1:152/4 or 1:153/107, last week i
  2089. got to calls (Kirk D. and Chris A.) to get this version, and at least one of
  2090. them might have made it avalible at their boards...
  2091.  
  2092. The OP102-1.ARC update should be there too. This is for BOTH the TP4 and the
  2093. TP5 versions.
  2094.  
  2095. Looking forward to hear from you.
  2096.  
  2097.    Per.
  2098.  
  2099. --- ConfMail V3.31ph3
  2100.  * Origin: Asgaard BBS - Home of OpInt - +45-6-119043 (2:230/22)
  2101.  
  2102.  
  2103. From:    Preben Bille-Brahe 
  2104. To:      Nathan Stout                             Msg #106, 13-Jan-89 02:11am
  2105. Subject: Keep command, Cntrl-C
  2106.  
  2107.  >   I cannot figure out how to use the KEEP command in Turbo Pascal 4.0...
  2108.  > I've read everything the book says, but I am still completely puzzled.  all
  2109.  > I want to be able to do is have the computer recognize CNTRL-C and clear
  2110.  > the screen when I press that key...
  2111.  >
  2112.  
  2113. Hope somebody can help you with KEEP, I usually do TSR's in Assembler...
  2114.  
  2115. What I do want to comment on, is Cntrl-C. This will require INTERRUPT-handling
  2116. (Int1Bh or Int23h) and  <<< SNAP >>>
  2117.  
  2118. Now to a small problem of mine with these Interrupts in TP5 !! ( Yes this
  2119. probably is a bit rude...:-)
  2120.  
  2121. As y'all know Ctrl-C has its own (MSDOS) interrupt (Int23) and Ctrl-BREAK has
  2122. another (IBM-origin ?), Int1B.
  2123.  
  2124. TP5 has two procedures SetCBreak,GetCBreak to set,get Ctrl-C status as
  2125. recieved
  2126. (ON/OFF) from DOS, but when I use unit CRT I caneading ! -------->
  2127.  
  2128. Indentation : Courtesy : Style Debate #9,005 / Andy Lester !
  2129.  
  2130. Best regards to Y'all from
  2131.                             Preben
  2132.  
  2133.      in Denmark ( There's something still rotting in ..... )
  2134.  
  2135.  
  2136. --- ConfMail V4.00
  2137.  * Origin: PBB SERVICE (Vanishing Point in East.7 Denmark) (2:231/40.4)
  2138.  
  2139.  
  2140. From:    Steve Fesperman 
  2141. To:      Charles Cremer                           Msg #107, 14-Jan-88 11:47am
  2142. Subject: Printer availability
  2143.  
  2144.  
  2145. Thanks, Charles, for the Printer info.  Looks formidable to my small 
  2146. mind, but I'll study it and try to puzzle it out.
  2147.  
  2148. Steve
  2149.  
  2150. --- QuickBBS v2.03
  2151.  * Origin: The Way Station -- North Charleston, SC -- (1:372/1)
  2152.  
  2153.  
  2154. From:    Erik Troan 
  2155. To:      Doug Micressed. I bet he can call about 2 places!
  2156.  PF> That's about all that support 9600 baud. 
  2157.  PF> YES THIS IS A FLAME!!!!!!
  2158.  
  2159. Maybe you guys should take this modem talk over to the communications Echo...
  2160. Incidently, the curre
  2161.  OV> Hallo
  2162.  OV> I am using turbo pascal but not very long
  2163.  OV> Can some one help me with the following question
  2164.  OV> How can I convert integers to string
  2165.  
  2166. Use the STR procedure with TP5...
  2167.  
  2168.  
  2169.  
  2170. --- Msg V3.2
  2171.  * Origin: SoundingBoard - YooHoo 2 Ya'll 2 - (713)821-4148 (1:um : string[9]
  2172.  
  2173.  RW> I think you left a semicolon off after the "name : string" statement.
  2174.  
  2175. Yeah, I did.
  2176.  
  2177. Andy
  2178.  
  2179.  
  2180. --- msged 1.95S ZTC
  2181.  * Origin: CONSqt 
  2182.  SF> for help with a printer-testing routine, I offer my most sincere 
  2183.  SF> thanks, and only hope I can repay the favor in kind someday.  Failing 
  2184.  SF> that, I DO have a younger sister...
  2185.  
  2186. Ah, he knows what programmers really want!  Not bits of code...
  2187.  
  2188. Andy
  2189.  
  2190.  
  2191. --- msged 1.95S ZTC
  2192.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  2193. (1:115/790.2)
  2194.  
  2195. *** This is a reply to #17.
  2196.  
  2197.  
  2198. From:    Andy Lester 
  2199. To:      Gary Godfrey                             Msg #123, 14-Jan-89 03:14pm
  2200. Subject: Text Editor
  2201.  
  2202.  GG> Anyone know where I can get my hands on a simple text editor with
  2203.  GG> source ? Written in Pascal of course ;-)
  2204.  
  2205. Turbo Editor Toolbox seems to be your numero uno source.
  2206.  
  2207. Andy
  2208.  
  2209.  
  2210. --- msged 1.95S ZTC
  2211.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  2212. (1:115/790.2)
  2213.  
  2214. *** Part of a conversation.
  2215.  
  2216.  
  2217. From:    Ed Swierk 
  2218. To:      Detlef Kloeser                           Msg #124, 14-Jan-89 08:43pm
  2219. Subject: Re: Turbo Pascal 5.0
  2220.  
  2221.  > Is there much difference
  2222.  > between versions 4.0 and 5.0 in regard to programming? If
  2223.  > not I could buy the book by Tom Swan called:Mastering
  2224.  > Turbo Pascal version 4.0 and use it as a tutorial.Any
  2225.  > advice ?
  2226.  
  2227. You can probably get Turbo Pascal Tutor directly from Borland, though you will
  2228. not get a bargain price for it.
  2229.  
  2230. Turbo 5.0 has not significantly changed 4.0 as far as the basic language is
  2231. concerned.  It includes a few new things like procedure types and overlays,
  2232. and has a built-in debugger.
  2233.  
  2234. Mastering Turbo Pascal 4.0 is a very good tutorial, probably one of the best. 
  2235. That's how I learned to program in Pascal, and it's the book I use most when
  2236. I'm programming.  It not only teaches standard Pascal, but also teaches Turbo
  2237. Pascal right along with it.  And most of the examples in the book should work
  2238. without modification in Turbo Pascal 5.0.
  2239.  
  2240.                               --==<< Ed >>==--
  2241.  
  2242. --- CM 4.6x
  2243.  * Origin: E.B.B.B.S. - SEA/Opus/HST/PCP Relay 1 - (1:107/323)
  2244.  
  2245. *** Part of a conversation.
  2246.  
  2247.  
  2248. From:    Ed Swierk 
  2249. To:      Robbie Napier                            Msg #125, 14-Jan-89 08:50pm
  2250. Subject: Re: Copyright
  2251.  
  2252.  > the sysop of the board told me that you can't just ask
  2253.  > for money.  He said
  2254.  > you have to register it, along with some other stuff.
  2255.  > Do you have any info
  2256.  
  2257. Basically, asking for money is all you have to do.  Just write your program,
  2258. write good documentation, and include a Copyright 198x John Doe in the program
  2259. and the documentation.  You're set!  You might want to find out about
  2260. registering your copyright in the copyright office, but that's only necessary
  2261. if you plan to take legal action (very rare, like SEA/PKware).
  2262.  
  2263.                               --==<< Ed >>==--
  2264.  
  2265. --- CM 4.6x
  2266.  * Origin: E.B.B.B.S. - SEA/Opus/HST/PCP Relay 1 - (1:107/323)
  2267.  
  2268. *** Part of a conversation.
  2269.  
  2270.  
  2271. From:    Loyd Craft 
  2272. To:      Andy Lester                              Msg #126, 13-Jan-89 10:13am
  2273. Subject: Re: STYLE DEBATE #9,005
  2274.  
  2275. In a message of <11 Jan 89 23:15:34>, Andy Lester (1:115/790.2) writes:
  2276.  
  2277. >I'm now officially sorry for ever asking about indentation styles:  It 
  2278. >gives  me stomach cramps to see so many people writing programs wrong! :-)
  2279.  
  2280. If'n the program works, it can't bee THAT wrong :)   I write mine the way Dave
  2281. Gogarin(Sp) does Mostly because that is the way I was taught, and the way the
  2282. tutorial had been written up.  It just made sense.....    You can take a look
  2283. at the page, and when writing this way, you SHOULD be able to take a piece of
  2284. paper and line up all begins and ends and see each block of code stand apart
  2285. from one another...  
  2286.  
  2287.   It is one thing I Completely LOVE when it comes to programming in Pascal... 
  2288. being able to split the lines, and do it "Your" way.   Not like 
  2289. GWbasic/Basica/etc...   I know you can be more flexible with turbo basic, and
  2290. QuickBasic, but I do not use them....  (Something about 35K Exe files :)
  2291.  
  2292. I am kind of glad you asked that question though.... It is interesting to
  2293. see...  I realise that with My way you end up with bigger source files,
  2294. because of all the indenting with spaces, but then again, I'm not using a
  2295. little disk drive like on the Commodores, Or even a 360K drive...  when ya got
  2296. 30 megs to use on a Personal machine, you have room to play with  (Even if you
  2297. are a pack rat like eme  :)
  2298.  
  2299. Loyd
  2300.  
  2301.  
  2302. --- msged 1.96S ZTC
  2303.  * Origin: MicroCosm Opus Owosso, Mi (517)-725-8077 (1:159/900)
  2304.  
  2305. *** Part of a conversation.
  2306.  
  2307.  
  2308. From:    Loyd Craft 
  2309. To:      Heikki Levanto                           Msg #127, 14-Jan-89 09:54am
  2310. Subject: Re: A Little Problem
  2311.  
  2312. In a message of <08 Jan 89 13:20:13>, Heikki Levanto (2:230/22.28) writes:
  2313. > >  TG> In my opinion, there's only one way to be fully planned before one
  2314. > >  TG> writes a program and that is flowcharting. That means spending 
  2315. > >  TG> many
  2316. > >  TG> hours doing paperwork before the first line of code is written.
  2317. >Flowcharting', you say, without specifying more.  In the latest 
  2318. >ACM/SIGSOFT newsletter there was a survey of some commonly used graphical 
  2319. >design methods, they had 18 of them.  They grouped them in three:
  2320.  
  2321. You need to direct this at TG> not LC>   I am not responsible for that text
  2322. you quoted  (I think I quoted it in a message to TG>)
  2323.  
  2324.  
  2325.  - Just so you know
  2326.  
  2327. Loyd
  2328.  
  2329.  
  2330.  
  2331.  
  2332. --- msged 1.96S ZTC
  2333.  * Origin: MicroCosm Opus Owosso, Mi. (517)-725-8077  (1:159/900)
  2334.  
  2335. *** Part of a conversation.
  2336.  
  2337.  
  2338. From:    Jim Forbes 
  2339. To:      Ben Lindstrom                            Msg #128, 14-Jan-89 07:20pm
  2340. Subject: File Reads/Writes
  2341.  
  2342. > I can't get it to print text graphics from a file.
  2343. >  Var f:text;lin:string;x:integer;
  2344. > .....
  2345. >    readln(f,lin);
  2346. >    writeln(f,lin);
  2347.              ^
  2348.              |  your telling the program to write 'lin' to file 'f'
  2349. which is the file you just read from.  To send 'lin' to the screen use:
  2350. writeln(lin); to send it to the printer use: writeln(lst,lin);  In
  2351. ver 3 'lst' is predefined.  In ver 5 it is defined in the unit 'printer'
  2352. so you must include that unit in a 'uses' statement.
  2353.   
  2354. > And I can't get any modem procedure working. could some one help me ...
  2355.   
  2356.   You did not say specifically what your problem is, but you might check
  2357. to see that your not making the same mistake. ie. sending your output
  2358. somewhere else than you intended to.
  2359.  
  2360.  
  2361. ---
  2362.  * Origin: Backstreet BBS [HST], Fulton, NY * (315)-593-1589 (Opus 1:260/325)
  2363.  
  2364.  
  2365. From:    Tommy Grusendorf 
  2366. To:      Bob Wiley                                Msg #129, 14-Jan-89 12:12pm
  2367. Subject: Re: TP 4.0 and different problems
  2368.  
  2369. The corect way to change the text color in TP 4, is using the TEXTCOLOR
  2370. command (eg: TEXTCOLOR(MAGENTA);)
  2371.  
  2372.  
  2373. ---
  2374.  * Origin: ESP BBS: WOC'ing Tall! (Opus 1:134/12)
  2375.  
  2376. *** There is a reply. See #145.
  2377.  
  2378.  
  2379. From:    Tim Ashman 
  2380. To:      Norbert Lange                            Msg #130, 14-Jan-89 07:18am
  2381. Subject: Re: TP3.0
  2382.  
  2383.  >  > there say at record 6.
  2384.  >
  2385.  > Yes, simply seek to the desired record, (ie.  seek(FileVar,Record);)
  2386.  > and then do a trunc(FileVar);
  2387.  
  2388. Norbert, thanks after I sent the message out I stumbled, and I mean stumbled
  2389. across the truncate command while I was looking for a different one.  I
  2390. appriecate you answering me.  Have a good one.
  2391.  
  2392. Tim 
  2393.  
  2394. --- ConfMail V4.00
  2395.  * Origin: Tim's Board -- WOCin' over here (1:105/316)
  2396.  
  2397. *** Part of a conversation.
  2398.  
  2399.  
  2400. From:    David Vins 
  2401. To:      Bill Sawyer                              Msg #131, 15-Jan-89 09:31am
  2402. Subject: Re: Virus in Pascal 4.0
  2403.  
  2404.    about your reply to the man wanting to write the virus
  2405.  
  2406.    HURRAHH!!!!
  2407.  
  2408.  clpa!!!!
  2409.  CLAP!!!!!!!!!!
  2410.  CLAP!!!!!!!!!!!!!
  2411. --- QuickBBS v2.03
  2412.  * Origin: The Outpost │ Nashua NH »HST« (1:132/113)
  2413.  
  2414. *** Part of a conversation.
  2415.  
  2416.  
  2417. From:    Tom Adams 
  2418. To:      Steve Fesperman                          Msg #132, 15-Jan-89 02:33am
  2419. Subject: Re: Print routine
  2420.  
  2421. My ezample to you should have used LST, not LPT.  Regards, Tom 
  2422.  
  2423. ---
  2424.  * Origin: ASCII -Home of TURBO PROGRAMMER- Raleigh (919)782-7752 PCP:NCRTP
  2425. (Opus 1:151/119)
  2426.  
  2427. *** Part of a conversation.
  2428.  
  2429.  
  2430. From:    Jim Segler 
  2431. To:      Justin Marquez                           Msg #133, 11-Jan-89 09:50am
  2432. Subject: Re: Philosophy
  2433.  
  2434. AREA:PASCAL
  2435. I want to know how you learn to drive ? you can't drive a car or truck with a
  2436. book you just learn the rules driveing is done best with hands on.......
  2437.  
  2438. --- D'Bridge 1.18m
  2439.  * Origin: SpaceWalker BBS (1:232/204)
  2440.  
  2441. *** Part of a conversation.
  2442.  
  2443.  
  2444. From:    Jim Segler 
  2445. To:      Dave Goggin                              Msg #134, 11-Jan-89 09:53am
  2446. Subject: Re: 300 BAUD
  2447.  
  2448. AREA:PASCAL
  2449. AMEN:::::: 
  2450.  
  2451. --- D'Bridge 1.18m
  2452.  * Origin: SpaceWalker BBS (1:232/204)
  2453.  
  2454. *** Part of a conversation.
  2455.  
  2456.  
  2457. From:    Hal Smith 
  2458. To:      Brad Corsello                            Msg #135, 15-Jan-89 11:27am
  2459. Subject: Re: TP 5.0 and intelligent linking
  2460.  
  2461. Brad,
  2462.   Yeah, I tend to get on a soap box at time and run off at the keyboard. 
  2463. That's the problem with echos.  You can waste lots of time, even though you
  2464. get good stuff.
  2465. -Hal
  2466. --- QuickBBS v2.03
  2467.  * Origin: Transient Technologies *PASCAL* Programming echo <HST> (1:280/302)
  2468.  
  2469. *** This is a reply to #94.
  2470.  
  2471.  
  2472. From:    Wesley Williams 
  2473. To:      Eric Givler                              Msg #136, 14-Jan-88 09:53pm
  2474. Subject: Re: Accessing clock
  2475.  
  2476.  >
  2477.  >  >  RW> Declaration   GetTime(var Hour, Minute, Second, Sec100:
  2478.  >  TG> Just so you know, gettime is supported in 4.0 also.
  2479.  
  2480.  >  Thanks for that blurb Tim.  I'm trying to learn more DBASE III at
  2481.  > work and Turbo at home.  It's starting to drive me crazy.  Maybe I'm
  2482.  > just losing it.                       ERIC
  2483. I'm REAL new to PASCAL so with the GETTIME function how do you put it up on
  2484. the screen??
  2485.  
  2486. Later,
  2487. WW]I[
  2488.  
  2489. --- FD 2.00
  2490.  * Origin: Down in Music City, Pascal lives...The Conversation Corner
  2491. (1:116/31)
  2492.  
  2493. *** Part of a conversation.
  2494.  
  2495.  
  2496. From:    Steve Fesperman 
  2497. To:      Detlef Kloeser                           Msg #137, 15-Jan-88 12:02pm
  2498. Subject: Turbo Pascal 5.0
  2499.  
  2500.  
  2501. The general programming rules are about the same for both TP 4.0 and 5.0.  
  2502. The biggest difference in the 2 is the integrated debugger which comes 
  2503. with version 5.0.  And it's a beaut.  Any book on Turbo 4.0 will be 
  2504. accurate for 5.0 in almost all circumstances.
  2505.  
  2506. --- QuickBBS v2.03
  2507.  * Origin: The Way Station -- North Charleston, SC -- (1:372/1)
  2508.  
  2509. *** Part of a conversation.
  2510.  
  2511.  
  2512. From:    Dionis Smith 
  2513. To:      All                                      Msg #138, 14-Jan-89 08:04am
  2514. Subject: 32-CRC Value
  2515.  
  2516.    Does anyone know how to go about finding the 32-CRC Value of a String ?
  2517. --Dionis Smith
  2518. --- QuickBBS v2.03
  2519.  * Origin: The Trading Post (1:363/4)
  2520.  
  2521.  
  2522. From:    Dionis Smith 
  2523. To:      All                                      Msg #139, 14-Jan-89 08:07am
  2524. Subject: Window Utility
  2525.  
  2526.   I am currently looking for the Source to a Window Utility. I download the
  2527. file has TPASCAL.ARC , it contains a EXAMPLE.PAS and WINDOWS.TPU. There is
  2528. no mention of the Author. I wrote a Utility for QuickBBS in 4.0 and would
  2529. like to release another version but I need to recompile the unit for TP
  2530. 5.0. I have looked into other Window Utilities but I'm leaving that for my
  2531. last choice, it would take along time to change everything. I believe the
  2532. syntax to it was Make_Window and Remove_Window. If anyone might know the
  2533. Author and/or a new version and/or the Source Code please let me know ?
  2534.  
  2535. --Dionis Smith
  2536. --- QuickBBS v2.03
  2537.  * Origin: The Trading Post (1:363/4)
  2538.  
  2539.  
  2540. From:    Dionis Smith 
  2541. To:      Tim Ashman                               Msg #140, 15-Jan-89 08:09pm
  2542. Subject: Re: TP3.0
  2543.  
  2544. -> @ In TP3.0 is there a way to truncate a file at a certain
  2545. -> @record number.
  2546. -> @ ie.  a file has 10 records of said length each.  I want to
  2547. -> @search for a particular record and truncate the file there
  2548. -> @say at record 6.  I want to do this without reading in the
  2549.  
  2550. Well, I do not have my TP 3.0 manual handy but I have my 4.0 And 5.0. Try
  2551. using the command Truncate(f) (* F is a file variable of any type *). All
  2552. records past the current position in the file area deleted. So you would
  2553. Seek(F,6) then do a Truncate(f).
  2554.  
  2555. --Dionis Smith
  2556. --- QuickBBS v2.03
  2557.  * Origin: The Trading Post (1:363/4)
  2558.  
  2559. *** This is a reply to #130.
  2560.  
  2561.  
  2562. From:    Heikki Levanto 
  2563. To:      Lou Garner                               Msg #141, 13-Jan-89 03:13pm
  2564. Subject: C versus PASCAL
  2565.  
  2566.  > Can't help but wonder where Kahn is going to take TP from here.  Can
  2567.  > you think of something lacking in TURBO PASCAL now?  I can't.
  2568.  
  2569. - Less memory requirements
  2570. - Parallel programming
  2571. - Tightly following some standards ( ANSI ) ( optional, I hope )
  2572. - 3D graphics
  2573. - Pascal++ ( that is object oriented stuff, I don't know how )
  2574. - Faster compilation ( yes, but still faster )
  2575. - Logic programming ( like in Prolog )
  2576. - Mouse support in programs and in the Integrated Environment
  2577. - DWIM ( Do What I Mean ) and self-correcting syntax check
  2578.  
  2579. I'll find more before he's got all these out !
  2580.  
  2581. yours
  2582.   Heikki
  2583.  
  2584. --- ConfMail V4.00
  2585.  * Origin: LSD - Levanto Software Development (2:230/22.28)
  2586.  
  2587. *** Part of a conversation.
  2588.  
  2589.  
  2590. From:    Heikki Levanto 
  2591. To:      Tomas Gradin                             Msg #142, 13-Jan-89 03:20pm
  2592. Subject: Can not figure...
  2593.  
  2594.  >> {$I+)
  2595.  > A simple, but disastrous mistype of } as ), in '{$I-}'...
  2596.  
  2597. I've seen many of those. ( me and my thick fingers ).  The best way to find
  2598. them, or at least one possible way, is to put some empty comments here and
  2599. there in the program, and if you get an error message just after {}, you can
  2600. guess that the bug is between that {} and the previous comment.
  2601.  
  2602.  
  2603.  
  2604. --- ConfMail V4.00
  2605.  * Origin: LSD - Levanto Software Development (2:230/22.28)
  2606.  
  2607. *** There is a reply. See #181.
  2608.  
  2609.  
  2610. From:    Heikki Levanto 
  2611. To:      Bruno De.montis                          Msg #143, 13-Jan-89 03:24pm
  2612. Subject: CLOCK ROUTINE
  2613.  
  2614.  > P.S.: Does anyone out there know a clean way of daisy-chaining interrupts
  2615.  > in Turbo Pascal ? I don't mind relocating *one* interrupt, but there aren't
  2616.  > a lot that are really free... Thanks in advance.
  2617.  
  2618. Try saving the old interrupt vector in a variable, and in your interrupt
  2619. procedure restoring the vector, make an interrupt via that vector, and then
  2620. reset the vector to your own routine.  You can also do something with a far
  2621. call, but I don't remember what.
  2622.  
  2623. │  ┌─ ─┐
  2624. └─ ─┘ ─┘  Heikki Levanto
  2625. Levanto Software Development
  2626.  
  2627.  
  2628.  
  2629. --- ConfMail V4.00
  2630.  * Origin: LSD - Levanto Software Development (2:230/22.28)
  2631.  
  2632.  
  2633. From:    Holger Schurig 
  2634. To:      Syd Kahn                                 Msg #144, 14-Jan-89 03:27pm
  2635. Subject: error 18
  2636.  
  2637. SK> I keep getting an error 18 in a message reader program I wrote.
  2638. SK> The manual says something about "too many files".
  2639. Check your manual again or go into the turpo 5.0 integrated environment,
  2640. type DOSERROR followed by CTRL-F1 and a PgDn. Then you read that the
  2641. error 18 stands for "no more files". Mostly you will get this error when
  2642. you use FINDFIRST/FINDNEXT and there are no more files to find.
  2643.  
  2644. Viele Gruesse, Holger
  2645.  
  2646. --- INFgate 0.7
  2647.  * Origin: INFSYS-Development (2:507/628.3)
  2648.  
  2649. *** This is a reply to #46.
  2650.  
  2651.  
  2652. From:    Holger Schurig 
  2653. To:      Bob Wiley                                Msg #145, 14-Jan-89 03:27pm
  2654. Subject: TP 4.0 and different problems
  2655.  
  2656. BW> What exactly is the correct way to change text colors in this
  2657. BW> version of Turbo Pascal?
  2658.  
  2659. If you use 4.0 or 5.0 and have an "USES CRT;" inside the program, you
  2660. can also assign direct values to TEXTATTR. Look at this sample program:
  2661.  
  2662. USES CRT;
  2663.  
  2664. VAR i : BYTE;
  2665.  
  2666. BEGIN
  2667.   CLRSCR;
  2668.   FOR i := 0 TO 255 DO BEGIN
  2669.     TextAttr := i;
  2670.     WRITE(i:4);
  2671.     TextAttr := $7;
  2672.     IF i AND 15=15 THEN WRITELN
  2673.   END
  2674. END.
  2675.  
  2676. Viele Gruesse, Holger
  2677.  
  2678. --- INFgate 0.7
  2679.  * Origin: INFSYS-Development (2:507/628.3)
  2680.  
  2681. *** Part of a conversation.
  2682.  
  2683.  
  2684. From:    Holger Schurig 
  2685. To:      All                                      Msg #146, 14-Jan-89 03:27pm
  2686. Subject: Parsing & more
  2687.  
  2688. In my search for a scanner and parser like lex and yacc i found a
  2689. pascal-compiler in pascal. Source is available. You may request it
  2690. from 2:507/1 as PASCOMP.PAK and need PAK10 to unpack it. Its about
  2691. 70 kB long.
  2692.  
  2693. Viele Gruesse, Holger
  2694.  
  2695. --- INFgate 0.7
  2696.  * Origin: INFSYS-Development (2:507/628.3)
  2697.  
  2698.  
  2699. From:    Holger Schurig 
  2700. To:      Shannon Pope                             Msg #147, 14-Jan-89 03:27pm
  2701. Subject: Re: Parsing
  2702.  
  2703. SP> Somehow I get the feeling that writing a word parser for a
  2704. SP> language other than english would be more likely to succeed.
  2705.  
  2706. Not if you try to parse german sentences. Our language is much more
  2707. complex then english.
  2708.  
  2709. Viele Gruesse, Holger
  2710.  
  2711. --- INFgate 0.7
  2712.  * Origin: INFSYS-Development (2:507/628.3)
  2713.  
  2714.  
  2715. From:    Dave Smith 
  2716. To:      Ross Wentworth                           Msg #148, 15-Jan-89 09:19pm
  2717. Subject: Re: beginner
  2718.  
  2719. Ross,
  2720.      If you are a student, you may want to try talking to some of your 
  2721. teachers, or professors about getting a student's discount through Borland. I
  2722. got Turbo C 2.0 and Turbo Pascal 5.0 through one of my classes at the
  2723. University of Arizona for about $45.00 a piece.
  2724.      Something to look into anyway... that is if you need the extra 
  2725. $50.00!!! :-)
  2726.  
  2727.           -Dave
  2728.  
  2729.  
  2730. --- ConfMail V4.00
  2731.  * Origin: UA Today (University of Arizona, Tucson) (1:300/3)
  2732.  
  2733.  
  2734. From:    Dave Smith 
  2735. To:      Jeff Fuller                              Msg #149, 15-Jan-89 09:23pm
  2736. Subject: Re: Self-Taught
  2737.  
  2738. Jeff,
  2739.      About a good text editor... I've been using an editor called BlackBeard 
  2740. that I really like a lot. It does some slick things, user definable windows,
  2741. built in mouse driver, all the goodies. I'm sure you could track it down on
  2742. one of the boards around you.
  2743.      Good luck.
  2744.  
  2745.          -Dave
  2746.  
  2747. --- ConfMail V4.00
  2748.  * Origin: UA Today (University of Arizona, Tucson) (1:300/3)
  2749.  
  2750. *** There is a reply. See #187.
  2751.  
  2752.  
  2753. From:    Dave Smith 
  2754. To:      All                                      Msg #150, 15-Jan-89 09:42pm
  2755. Subject: TSRs
  2756.  
  2757. I just got my copy of Turbo Pascal 5.0 and I really love it (the debugger is
  2758. an excellent addition.) Anyway, one of the things that Borland boasts about is
  2759. that on TP4 and TP5, one can semi-easily create programs that terminate and
  2760. stay resident. Well... I've looked in my Reference guide for Pascal, and Turbo
  2761. C... both seem to have the routines to do the trick (I think it's called
  2762. keep), but they (Borland) pretty much leave you in the dark as to how to use
  2763. them. Anybody out there seen any good articles about it lately?
  2764.  
  2765.     Hmmmmmm?
  2766.     Any response is appreciated.
  2767.  
  2768.       Thanx,
  2769.        -Dave
  2770.  
  2771. --- ConfMail V4.00
  2772.  * Origin: UA Today (University of Arizona, Tucson) (1:300/3)
  2773.  
  2774. *** There is a reply. See #212.
  2775.  
  2776.  
  2777. From:    Micah Bleecher 
  2778. To:      Heikki Levanto                           Msg #151, 16-Jan-89 06:31am
  2779. Subject: Re: Salary
  2780.  
  2781.  HL> When I don't have a job, I spend my time studying. Mostly 
  2782.  HL> new languages, and also preparing my Tp toolbox.
  2783.  HL>  
  2784.  HL> yours
  2785.  HL>  
  2786.  HL>  3  ZD D?
  2787.  HL> @D DY DY  Heikki Levanto
  2788.  HL> Levanto Software Development
  2789.  
  2790. Thanks for  the reply Heikki, I dont suppose you have the latest copy of
  2791. OPINT5 do you ? There are supposed to be several places in Europe that it is
  2792. available, but  it is not to be found anywhere in the States... Thanks ---
  2793.  
  2794.  
  2795. Of the languages you know, which are some of your favorites and why ?  (If you
  2796. dont mind me asking)
  2797.  
  2798.  
  2799. Micah
  2800.  
  2801.  
  2802.  
  2803. --- Msg V3.2
  2804.  * Origin: SoundingBoard - YooHoo 2 Ya'll 2 - (713)821-4148 (1:106/12)
  2805.  
  2806. *** This is a reply to #102.
  2807.  
  2808.  
  2809. From:    Micah Bleecher 
  2810. To:      Ed Swierk                                Msg #152, 16-Jan-89 06:37am
  2811. Subject: Re: Copyright
  2812.  
  2813.  > the sysop of the board told me that you can't just ask
  2814.  > for money.  He said
  2815.  > you have to register it, along with some other stuff.
  2816.  > Do you have any info
  2817.  ES>  
  2818.  ES> Basically, asking for money is all you have to do.  Just 
  2819.  ES> write your program, write good documentation, and include 
  2820.  ES> a Copyright 198x John Doe in the program and the 
  2821.                  ^^^^^^^^^^^^^
  2822.               What is meant here ?
  2823.  
  2824.  
  2825. Micah
  2826.  
  2827.  
  2828. --- Msg V3.2
  2829.  * Origin: SoundingBoard - YooHoo 2 Ya'll 2 - (713)821-4148 (1:106/12)
  2830.  
  2831. *** Part of a conversation.
  2832.  
  2833.  
  2834. From:    Micah Bleecher 
  2835. To:      David Vins                               Msg #153, 16-Jan-89 06:39am
  2836. Subject: Re: Virus in Pascal 4.0
  2837.  
  2838.  DV>    about your reply to the man wanting to write the virus
  2839.  DV>  
  2840.  DV>    HURRAHH!!!!
  2841.  DV>  
  2842.  DV>  clpa!!!!
  2843.  DV>  CLAP!!!!!!!!!!
  2844.  DV>  CLAP!!!!!!!!!!!!!
  2845.  
  2846.  
  2847. Isnt it unbelievable that a person would ask how to write a virus in a public
  2848. forum --- That fella needs to be watched ! 
  2849.  
  2850.  
  2851.  
  2852. --- Msg V3.2
  2853.  * Origin: SoundingBoard - YooHoo 2 Ya'll 2 - (713)821-4148 (1:106/12)
  2854.  
  2855. *** Part of a conversation.
  2856.  
  2857.  
  2858. From:    Chris Howe 
  2859. To:      Dave Goggin                              Msg #154, 15-Jan-89 03:12pm
  2860. Subject: Re: HELLO
  2861.  
  2862. Hi, say how are things in sunny Calf? now, WHO ARE YOU AND HOW DO YOU
  2863. KNOW MY NAME?
  2864. realy, i havn't been on this board in years. lets keep in touch
  2865.                                   -ch
  2866. --- QuickBBS v1.02
  2867.  * Origin: Somewhere on Cherry St. (170/211)
  2868.  
  2869. *** This is a reply to #92.
  2870.  
  2871.  
  2872. From:    Julio William 
  2873. To:      Ben Lindstrom                            Msg #155, 15-Jan-89 04:56pm
  2874. Subject: Re: Output to ...
  2875.  
  2876. Remove "f" in your writeln statement,  You want to write to screen
  2877. instead back to that file I assume.
  2878. --- QuickBBS v1.02
  2879.  * Origin: Somewhere on Cherry St. (170/211)
  2880.  
  2881. *** Part of a conversation.
  2882.  
  2883.  
  2884. From:    Julio William 
  2885. To:      All                                      Msg #156, 15-Jan-89 05:00pm
  2886. Subject: TP2C17S.ARC
  2887.  
  2888. I am looking for Turbo Pascal source code for Turbo to C converter.
  2889. Does anyone know where I can find it?
  2890. The current version that I know is Ver 1.7
  2891. --- QuickBBS v1.02
  2892.  * Origin: Somewhere on Cherry St. (170/211)
  2893.  
  2894.  
  2895. From:    Justin Marquez 
  2896. To:      Dan Wulff                                Msg #157, 16-Jan-89 12:49pm
  2897. Subject: Print routine
  2898.  
  2899. Dan, 
  2900.  
  2901.        Just to make it super-easy for the novice (of which I am one) PASCAL 
  2902. programmers, here is your routine included in a complete, working program:
  2903. --------------------- CUT Here ------------------------------------------
  2904. Program PrtTest;
  2905. Uses DOS;
  2906.  
  2907. VAR
  2908.    Forever : Boolean;
  2909.  
  2910. FUNCTION printer_ready:BOOLEAN;
  2911. VAR
  2912.   regs :registers;
  2913.  
  2914. BEGIN
  2915.   regs.dx:=0;
  2916.   regs.ah:=2;
  2917.   INTR($17,regs);
  2918.   IF NOT (regs.ah IN (.16,144,208.)) THEN printer_ready:=FALSE
  2919.                                      ELSE printer_ready:=TRUE;
  2920. END;
  2921.  
  2922. BEGIN { Main Program Starts here }
  2923.       Forever := true;
  2924.       while forever do
  2925.       begin
  2926.           If Printer_Ready then WriteLn(' Printer is :     READY')
  2927.                            else WriteLn(' Printer is : NOT READY');
  2928.       end;
  2929.  
  2930. END.  { Main Program ends here   }
  2931. ------------------- CUT Here ---------------------------------------
  2932.  
  2933. Justin Marquez
  2934.  
  2935.  
  2936. --- msged 1.96S ZTC
  2937.  * Origin: Region 19 Coordinator  (1:106/100)
  2938.  
  2939. *** Part of a conversation.
  2940.  
  2941.  
  2942. From:    Greg Franklin 
  2943. To:      John Wolter                              Msg #158, 13-Jan-89 06:13pm
  2944. Subject: Re: Accessing clock
  2945.  
  2946.  > Can anyone tell a self-taught Pascal programmer who just 
  2947.  > discovered  Turbo Pascal how to access the system clock?  Thanks. 
  2948.  
  2949. With TP4 and TP5, check out the GetTime, SetTime, GetDate, and
  2950. SetDate procedures in your manual.  They're powerful.
  2951.  
  2952. --- Via OpXpress V1.07ß "Silver"  Greg Franklin, an End User...
  2953.  * Origin: The Migrants BBS Phx. Az. ░▒▓ (602) 264-2328 ▓▒░ (1:114/07)
  2954.  
  2955. *** This is a reply to #136.
  2956.  
  2957.  
  2958. From:    Greg Franklin 
  2959. To:      Matt Franckiewicz                        Msg #159, 13-Jan-89 06:46pm
  2960. Subject: Re: Edit window
  2961.  
  2962.  > Another apparent error in my TP 5.0 documentation is the 
  2963.  > statement  that the edit window is 77 columns wide.  In mine, I 
  2964.  > can type in column  79 while column 1 is still visible.  If I go 
  2965.  > to column 80, everything  scrolls left, and column 1 disappears.  
  2966.  > {Nonetheless, I still have  79, not 77 columns.  Is this the same 
  2967.  > for you?  More bad documentation? 
  2968.  
  2969. Yes and no.  Doesn't the Edit Window have a border around it (unless
  2970. it's zoomed)?  The border characters take up two columns by themselves,
  2971. allowing you to see only 78 columns.  And when you type into the 78th
  2972. column, everything scrolls right.  If you've zoomed to full screen,
  2973. you should have a normal 80-column width.
  2974.  
  2975. --- Via OpXpress V1.07ß "Silver"  Greg Franklin, an End User...
  2976.  * Origin: The Migrants BBS Phx. Az. ░▒▓ (602) 264-2328 ▓▒░ (1:114/07)
  2977.  
  2978.  
  2979. From:    Greg Franklin 
  2980. To:      Finn Stadel                              Msg #160, 15-Jan-89 10:28pm
  2981. Subject: Re: Turbo pascal 4
  2982.  
  2983.  > One bad thing about PASCAL I think is the limited no of straing 
  2984.  > handleing  function that exist.. no sliceing or space trimming 
  2985.  > functions, or  upper/lower case conversion routines.. One has to 
  2986.  > include some self-made  funtction each time one need them.
  2987.  
  2988. I understand, but (at least in Turbo Pascal) once you write routines
  2989. to do those kind of things, you can roll them all together in one
  2990. unit called "Strings" or something, then put "uses Strings;" at the
  2991. top of your program.  That way, you get what you want.  And those of
  2992. us without need of such routines don't have to worry about them.
  2993.  
  2994.  > Another problem I have, is with the input-output functions:
  2995.  > What if an error occrs, such as f.i. end of file, when reading 
  2996.  > data. One has to check for all errors, each time one does 
  2997.  > something, and some  can't be checked for at all. 
  2998.  
  2999. There's a way around that in TP, I believe.  It has to do with using
  3000. the {$I+} and {$I-} compiler options around your input/output
  3001. procedures, then checking an IOResult variable.  Maybe there's an
  3002. example of it in the manual near IOResult....
  3003.  
  3004.  > The last problem, is in the fixed structure of pascal.
  3005.  > What does one do to exit a large block of a program. f.i. if the 
  3006.  > user  presses ESC to 'get back' or some errounious data is 
  3007.  > entered etc. ect. ? The only solution I could think of is to 
  3008.  > return an error code for each  function you execute, and then let 
  3009.  > this error code 'bubble up' to the  level you want. 
  3010.  > If a program only used goto's , this would be no problem at all 
  3011.  > to do. -
  3012.  
  3013. That would work fine.  Some cases, repeat..untils, and whiles should
  3014. do the trick.  Even better might be using the Exit procedure.
  3015. It can pop you out of a proc instantly, check the manual for details.
  3016.  
  3017. Does this help?
  3018.  
  3019.  
  3020. --- Via OpXpress V1.07ß "Silver"  Greg Franklin, an End User...
  3021.  * Origin: The Migrants BBS Phx. Az. ░▒▓ (602) 264-2328 ▓▒░ (1:114/07)
  3022.  
  3023. *** This is a reply to #108.
  3024.  
  3025.  
  3026. From:    Greg Franklin 
  3027. To:      George Butts                             Msg #161, 15-Jan-89 09:25pm
  3028. Subject: Re: A Computer Term
  3029.  
  3030.  GF>> What does the prefix "foo" as in "foobar" really stand for?  I know
  3031.  
  3032.  >   It's  FUBAR  as is  F****d Up Beyond All Recognition
  3033.  
  3034. Thanx...that was one of the Great Hacker Mysteries I never picked up on...
  3035. I can see why programmers would be so fond of it.
  3036.  
  3037. --- Via OpXpress V1.07ß "Silver"  Greg Franklin, an End User...
  3038.  * Origin: The Migrants BBS Phx. Az. ░▒▓ (602) 264-2328 ▓▒░ (1:114/07)
  3039.  
  3040. *** Part of a conversation.
  3041.  
  3042.  
  3043. From:    John Hughes 
  3044. To:      Robbie Napier                            Msg #162, 15-Jan-89 04:30pm
  3045. Subject: Re: Copyright
  3046.  
  3047. Shareware is not a legal term and therefore there is no legal way (or
  3048. need) to register it as such.  Any author can label his program as 
  3049. shareware and ask for a payment.
  3050. Perhaps your sysop was talking about the Association of Shareware
  3051. Professionals.  You should probably contact them.  After diging through
  3052. several piles of paper where I'm suppose to keep that kind of stuff, the only
  3053. address I can give you is the Compuserve # of Jim Button, the chairman of
  3054. their board of directors - 71435,2012.
  3055. Prehaps someone else can give you more information.
  3056.  
  3057.  
  3058. ---
  3059.  * Origin: The Buffer Board (503) 747-7636 (Opus 1:152/2)
  3060.  
  3061. *** This is a reply to #152.
  3062.  
  3063.  
  3064. From:    Scott Baker @ 902/10 
  3065. To:      All                                      Msg #163, 15-Jan-89 10:47am
  3066. Subject: TP 5.0 and DesqView API
  3067.  
  3068.   Does anyone out there know of a turbo pascal 5.0 unit for using the
  3069. DesqView API functions? I am interested in implementing enhanced
  3070. DesqView support into a bbs program that I am writing. I have seen
  3071. similar packages to what I want for Turbo-C, but nothing for pascal. I
  3072. would greatly appreciate any help that anyone could give me.
  3073.  
  3074. -Scott
  3075.  
  3076. --- Mach-10 BBS v 2.00
  3077.  
  3078.  # Origin: The Not-Yet-Named bbs  Tucson, Az (602) 577-3650  (8:902/10)
  3079.  * Origin: Network Gateway to RBBS-NET  (RBBS-PC 1:10/8)
  3080.  
  3081.  
  3082. From:    Charles Falconer 
  3083. To:      All                                      Msg #164, 15-Jan-89 12:46pm
  3084. Subject: passing procs in tp4
  3085.  
  3086.  PROGRAM testpcall(output);
  3087.  (* How to pass procedures (and functions) in TP4.  Normal *)
  3088.  (* parameter (count and type), and stack checks, apply.   *)
  3089.  (* Copyright (c) 1989 by C.B. Falconer, 680 Hartford Tpk, *)
  3090.  (* Hamden CT 06517.    Released for non-profit use only.  *)
  3091.  
  3092.  {$f+ all passed procedures, and pcall, MUST be far}
  3093.  
  3094.    (* 1---------------1 *)
  3095.  
  3096.    PROCEDURE pcaller;  (* Macro to create various pcalls *)
  3097.  
  3098.      inline($89/$EC/ {pop  bp;  remove entry ops      }
  3099.             $5D/     {mov  sp,bp                      }
  3100.             $58/     {pop  ax;  offset return         }
  3101.             $5B/     {pop  bx;  segment return        }
  3102.             $59/     {pop  cx;  offset execute        }
  3103.             $5A/     {pop  dx;  segment execute       }
  3104.             $53/     {push bx;  stack eventual return }
  3105.             $50/     {push ax                         }
  3106.             $52/     {push dx;  stack execution addr  }
  3107.             $51/     {push cx                         }
  3108.             $CB);    {retf;     and execute           }
  3109.  
  3110.    (* 1---------------1 *)
  3111.  
  3112.    FUNCTION wrtln1(s : string; fld : word) : boolean;
  3113.  
  3114.      BEGIN (* wrtln1 *)
  3115.      write('WRTLN1: '); write(s : fld); writeln; wrtln1 := true;
  3116.      END; (* wrtln1 *)
  3117.  
  3118.    (* 1---------------1 *)
  3119.  
  3120.    FUNCTION wrtln2(s : string; fld : word) : boolean;
  3121.  
  3122.      BEGIN (* wrtln2 *)  (* NOTE final code tauter than wrtln1 *)
  3123.      writeln('WRTLN2: ', s : fld); wrtln2 := true;
  3124.      END; (* wrtln2 *)
  3125.  
  3126.    (* 1---------------1 *)
  3127.  
  3128.    FUNCTION pcall(s : string; fld : word; what : pointer) : boolean;
  3129.    (* Write this with the EXACT parameter list of the      *)
  3130.    (* various called procedures, PLUS the "what : pointer" *)
  3131.    (* at the end.  The following body never changes.       *)
  3132.  
  3133.      BEGIN (* pcall *)
  3134.      pcaller;
  3135.      END; (* pcall *)
  3136.  
  3137.    (* 1---------------1 *)
  3138.  
  3139.    BEGIN (* testpcall *)
  3140.    IF pcall('test 1', 30, addr(wrtln1)) THEN
  3141.      IF pcall('test 2', 30, addr(wrtln2)) THEN {worked};
  3142.    END. (* testpcall *)
  3143.  
  3144.  
  3145. ---
  3146.  * Origin: Alice's Restaurant (Opus 1:141/488)
  3147.  
  3148.  
  3149. From:    Charles Falconer 
  3150. To:      Danny Trevino                            Msg #165, 15-Jan-89 03:38pm
  3151. Subject: Re: pd-compiler
  3152.  
  3153. At least in the CPM world, and HP3000s, my PascalP is available.  I have
  3154. published the source to everything except the code generators.  The port to
  3155. MSDOS was never completed (enough to run the compiler, but not the full
  3156. system).  The system generates assy source and/or portable P-codes, and is ISO
  3157. standard (verified with test suite - exceptions goto out of procedures and
  3158. procedural parameters).  The compiler creates identically operating programs
  3159. on multiple machines (The HP3000 is a timesharing multitasking 16 bit big
  3160. mini, with 64 plus terminals plus background tasks).
  3161.  
  3162.  
  3163. ---
  3164.  * Origin: Alice's Restaurant (Opus 1:141/488)
  3165.  
  3166. *** There is a reply. See #168.
  3167.  
  3168.  
  3169. From:    Charles Falconer 
  3170. To:      J J Marquez                              Msg #166, 15-Jan-89 03:43pm
  3171. Subject: Re: STYLE DEBATE #9,005
  3172.  
  3173.   The example:
  3174.      REPEAT
  3175.        ....
  3176.      UNTIL xxxx  {no semi}
  3177.  
  3178. will not compile unless the next word is END or ELSE.  Pascal semicolons are
  3179. statement separators.  However, ";;" is a NULL statement between the semis,
  3180. and a NULL statement is always a legal statement.  Thus there is no reason not
  3181. to terminate all statments with semis, UNLESS the next word is ELSE.  ELSE
  3182. should never be preceded by a semi (with an exception, peculiar to Turbo, of
  3183. the alternative action CASE clause ELSE.  A much better choice would have been
  3184. OTHERWISE, recommended in one of the earlier ISO draft proposals and later
  3185. dropped.).
  3186.  
  3187.  
  3188.  
  3189. ---
  3190.  * Origin: Alice's Restaurant (Opus 1:141/488)
  3191.  
  3192. *** Part of a conversation.
  3193.  
  3194.  
  3195. From:    Charles Falconer 
  3196. To:      Andy Lester                              Msg #167, 15-Jan-89 03:56pm
  3197. Subject: Re: GOTOs
  3198.  
  3199. It can and has been shown that any GOTO program can be functionally duplicated
  3200. with structured constructs, PROVIDING that auxiliary variables are used.  I
  3201. often find that a GOTO is clearer and simpler than adding the auxialiary
  3202. variables.  Similarly, in Turbo, I NEVER use the exit operation, but define a
  3203. label at procedure end, and GOTO that.  It is easy to see the GOTO, and if the
  3204. label is of the small integer variety 
  3205. (the only kind allowed in ISO std) it stands out to the reader.  I 
  3206. have one piece of code (recursive) something like
  3207.  
  3208.     <lots of code>
  3209.     recursivecall(parameters);
  3210.     IF fatalerror THEN GOTO 10;
  3211.     <lots more code>
  3212.  
  3213.     IF cond THEN BEGIN
  3214.       fatalerror := true; GOTO 10; END;
  3215.     <more code>
  3216. 10: END; (* procedure *) which unwinds errors deep in the nesting quite
  3217. nicely.  fatalerr is a global.  Another example:
  3218.  
  3219.     FOR i := startvalue TO endvalue DO BEGIN
  3220.       <code>
  3221.       IF condition THEN GOTO 99;
  3222.       <code>
  3223. 99:   END;
  3224.  
  3225. and the equivalent in WHILE and REPEAT loops.  This allows you to create
  3226. arbitrarily things in the LOOP family, without the confusion of auxiliary
  3227. variables, and (to me) clarity.
  3228.  
  3229. In general I consider GOTO a useful tool, but it must be used with discipline.
  3230. I dislike EXIT, and C's/MODULA RETURNS, because they hide the structure. 
  3231. They, and GOTO, should usually (never say always) be used for unusual
  3232. conditions, not routinely.
  3233.  
  3234.  
  3235. ---
  3236.  * Origin: Alice's Restaurant (Opus 1:141/488)
  3237.  
  3238. *** This is a reply to #39.
  3239.  
  3240.  
  3241. From:    Tony Shelton 
  3242. To:      Danny Trevino                            Msg #168, 15-Jan-89 12:43am
  3243. Subject: Re: pd-compiler
  3244.  
  3245.  > Does anyone know where I can find a good Pd/Shareware Pascal 
  3246.  >compiler?....
  3247.  
  3248. There are two that I know of.  One is VISIBLE Pascal.  Don't know 
  3249. where
  3250. find it though.  Another can be found on Compu$erve in the IBMPRO 
  3251. forum.
  3252. It is supposed to have an integrated environment, but since I've not
  3253. used it, I cannot comment on it.
  3254.  
  3255. Hope that helps.
  3256. Tony
  3257.  
  3258. --- Via OpXpress V1.03ß
  3259.  * Origin: The Tech Connect - **HST** (1:124/6215)
  3260.  
  3261. *** Part of a conversation.
  3262.  
  3263.  
  3264. From:    dj murdoch 
  3265. To:      Heikki Levanto                           Msg #169, 14-Jan-89 09:45am
  3266. Subject: Re: STYLE DEBATE #9,005
  3267.  
  3268.  > I don't buy the argument of lining begins and ends so you can easier
  3269.  > find the missing one.  When ever I write a begin, I write its
  3270.  > corresponding end, and a comment to the end explaining what ends here.
  3271.  
  3272. That's a good style, but I find it a tiny bit risky because it means coding
  3273. things twice, in widely separated parts of the program. The first time is the
  3274. code that starts the block, the second time is the comment telling me what the
  3275. code does. Anytime the same thing is coded twice, there's a risk that later
  3276. modifications will change one copy but not the other.
  3277.  
  3278. For example, I might decide a different condition makes more sense than the
  3279. first one I coded, and change it. If I forget to change the comment, it'll
  3280. just confuse me when I come back to look at it a year later.  
  3281. This is a problem with all comments, but if the comments are close to the code
  3282. they describe, there's less risk of not making both changes.  
  3283.  > Next question to style debate:
  3284.  >
  3285.  > if a=10 then inc(a);
  3286.  
  3287. I like this version. But if 'a' or '10' were a long expression, or maybe even
  3288. just a long variable name, I'd put spaces around it. For example,
  3289.  
  3290. if a = b+c then ...
  3291. if a = b*c + d*e then ...
  3292.  
  3293. It all depends on what looks best in a particular case.
  3294.  
  3295. --- ConfMail V3.31
  3296.  * Origin: Murdoch's_Point  - - (1:221/162.1005)
  3297.  
  3298. *** Part of a conversation.
  3299.  
  3300.  
  3301. From:    dj murdoch 
  3302. To:      Joerg Hegermann                          Msg #170, 14-Jan-89 10:07am
  3303. Subject: Units
  3304.  
  3305.  > I have as well a main program about 1 Kb of source from which I call
  3306.  > these various functions and procedures in those units.
  3307.  > Each unit for itself works fine, but when I include the statement
  3308.  > uses unit1, unit2, unit3 ... etc. in the main program I get error 48
  3309.  > which basically tells me that that module is too big.
  3310.  
  3311. This sounds really strange.  Perhaps you're allowed more than 64K of code in a
  3312. unit, as long as nobody uses all of it?  Doesn't sound likely.  Maybe the
  3313. error number is wrong, and you really have too much data.  All globals have to
  3314. go into the same data segment.
  3315.  
  3316. --- ConfMail V3.31
  3317.  * Origin: Murdoch's_Point  - - (1:221/162.1005)
  3318.  
  3319. *** This is a reply to #116.
  3320.  
  3321.  
  3322. From:    Lou Garner 
  3323. To:      Ross Wentworth                           Msg #171, 15-Jan-89 12:19pm
  3324. Subject: Multi-Tasking in TP
  3325.  
  3326.  >> > I would like to have a type of multi-tasking implemented..
  3327.  >>Instead of going through the GREAT pain of writing a multitasking
  3328.  >>program in Pascal, you would be better off purchasing a copy of
  3329.  >>DesqView, OmniView, or DoubleDos.
  3330.  
  3331. There is a recent file floating around under the title of MULTI-ARC,
  3332. containing a unit and some source code (very little) that claims will
  3333. implement multi-tasking in a TP program.  You can get the full SRC
  3334. with additional ($100?) payment.
  3335.  
  3336.  
  3337. --- Via OpXpress V1.03ß       Don't you MESS with Texas, son....!!
  3338.  * Origin: The Tech Connect - **HST** (1:124/6215)
  3339.  
  3340.  
  3341. From:    Lou Garner 
  3342. To:      Alan Ten                                 Msg #172, 15-Jan-89 12:20pm
  3343. Subject: Re: pascal4
  3344.  
  3345.  >>HelloHa......Any Pascal 4 Expert out there.....I got a little
  3346. favour.
  3347.  >>How to create an routine to called other executed file from from a
  3348.  >>pascal Program ??? Care to Enlighten Me....
  3349.  
  3350. That is well-explained in the TP4 and TP5 manual, and in every
  3351. after-market book I have seen.  Have you done ANY searching?
  3352.  
  3353.  
  3354. --- Via OpXpress V1.03ß       Don't you MESS with Texas, son...:124/6215)
  3355.  
  3356.  
  3357. From:    Lou G:124/6215)
  3358.  
  3359.  
  3360. From:    Lou Garner 
  3361. To:      Alan Ten                                 Msg #173, 15-Jan-89 12:21pm
  3362. Subject: Re: Pascal4 & CCDos
  3363.  
  3364.  >>Thank y,But I'm still new to the watch option, what does it do
  3365. excatly
  3366.  >>I've not got the manual yet..Wo..Quit Expensive..Well any good
  3367. manual
  3368.  >>To recommend to me!!
  3369.  
  3370. Best recommendation is to buy the TURBO PASCAL program, which comes
  3371. with a manual.  The TP 5.0 can be bought for as little as $89.
  3372.  
  3373.  
  3374. --- Via OpXpress V1.0=10 then inc(a);
  3375. -> if a=10 then inc (a);
  3376.  
  3377.  
  3378. in: The Tech Connect - **HST** (1:124/6215)
  3379.  
  3380. *** Part of a conversation.
  3381.  
  3382.  
  3383. From:    Lou Garner 
  3384. To:      Gary Lagier                              Msg #174, 15-Jan-89 11:51am
  3385. Subject: TURB Origin: ]≡[ The Pascal Programmer's Club ]≡[ (950/513)
  3386. re
  3387.  >>P O Box 512
  3388.  >>Ripon CA 95336
  3389.  >>
  3390.  >>Look forward to setting soemthing up with you.
  3391.  
  3392. Posting your address in front of this many PASCALholics
  3393. will *definitely* get you mail!
  3394.  
  3395. --- Via OpXpress V1.03ß       Don't you MESS with Texas, son....!!
  3396.  * Origin: The Tech Connect - **HST** (1:124/6215)
  3397.  
  3398.  
  3399. From:    Lou Garner 
  3400. To:      Bryan Minihan                            Msg #175, 15-Jan-89 11:53am
  3401. Subject: TURBO PASCAL manual
  3402.  
  3403.  >> Also, if anybody has the Documentation
  3404.  >>for Turbo  Pascal...I'd appreciate it if I could possibly get my
  3405.  >>hands on some.  (dog chewed mine...ha ha...I really lost them in 
  3406. the
  3407.  >>big move)
  3408.  
  3409. BORLAND will sell replacement manuals to registered owners.
  3410.  
  3411. --- Via OpXpress V1.03ß       Don't you MESS with Texas, son....!!
  3412.  * Origin: The Tech Connect - **HST** (1:124/6215)
  3413.  
  3414.  
  3415. From:    Lou Garner 
  3416. To:      Justin Marquez                           Msg #176, 15-Jan-89 12:03pm
  3417. Subject: Re: 300 BAUD
  3418.  
  3419.  > TA| Lou, I guess I don't see where it matters what speed someone
  3420.  >calls a board at!
  3421.  
  3422.  >>       Makes sense to me.... if everybody has the same minute/call,
  3423.  >>minutes/day and calls/day allocation - why should I care what speed
  3424.  >>he calls   in at? Hardly ANYBODY can type continuously at even 
  3425. close
  3426.  >>to 300 baud!
  3427.  
  3428. I don't think this is correct.  People calling a board have a list of
  3429. things to do, and will take the time to finish that work.  A 300 baud
  3430. caller will take EIGHT TIMES as long as someone at 2400 and FOUR TIMES
  3431. as long as someone at 1200.
  3432.  
  3433. Do you want one caller blocking up to SEVEN others?  If so, your board
  3434. isn't very busy.  If you believe that everyone uses all of their
  3435. available minutes each call, then I have to say I do not see that on
  3436. my board.
  3437.  
  3438.  
  3439. --- Via OpXpress V1.03ß       Don't you MESS with Texas, son....!!
  3440.  * Origin: The Tech Connect - **HST** (1:124/6215)
  3441.  
  3442. *** Part of a conversation.
  3443.  
  3444.  
  3445. From:    Lou Garner 
  3446. To:      Andy Lester                              Msg #177, 15-Jan-89 12:11pm
  3447. Subject: Job Market - Programming
  3448.  
  3449.  >>Well, I'm makin' about half of what "everyone else" is making,
  3450.  >>according to   InfoWorld surveys, but I also have no college degree
  3451.  
  3452. Classified ads here in Dallas on Sunday showed nine full pages of
  3453. ads for programmers/analysts/etc. and those that listed salaries
  3454. showed starts in the mid 30's rising to high 40's.  COBOL mainly.
  3455.  
  3456. --- Via OpXpress V1.03ß       Don't you MESS with Texas, son....!!
  3457.  * Origin: The Tech Connect - **HST** (1:124/6215)
  3458.  
  3459.  
  3460. From:    Lou Ge nearby.
  3461.  
  3462. Not wanting this to be an ad for them, but BOOKSTOP discounts off list
  3463. and stocks MANY more computer-oriented books than the WALDEN/et al.
  3464. The WALDEN and DALTON places carry a few only, and are full-price.
  3465.  
  3466. --- Via OpXpress V1.03ß       Don't you MESS with Texas, son....!!
  3467.  * Origin: The Tech Connect - **HST** (1:124/6215)
  3468.  
  3469.  
  3470. From:    Doug Michael 
  3471. To:      Heikki Levanto                           Msg #179, 14-Jan-89 04:10pm
  3472. Subject: Re: STYLE DEBATE #9,005
  3473.  
  3474. -> if a=10 then inc(a);
  3475. -> if a=10 then inc (a);
  3476.  
  3477.  
  3478. if a=10 then
  3479.    begin
  3480.    inc(a);
  3481.    othertrash
  3482.    end
  3483. else
  3484.    begin
  3485.    dec(a);
  3486.    LotsMoreTrash
  3487.    end;
  3488.  
  3489. But, like you, when I'm coding in someone elses prog/proc/func/unit I use
  3490. their structurings.
  3491. ==--->Doug<---==
  3492. --- QuickBBS v2.03
  3493.  * Origin: ]≡[ The Pascal Programmer's Club ]≡[ (950/513)
  3494.  
  3495. *** Part of a conversation.
  3496.  
  3497.  
  3498. From:    John Young Of 77/7 
  3499. To:      Kevin Lowey                              Msg #181, 14-Jan-89 01:25pm
  3500. Subject: Re: Can not figure...
  3501.  
  3502. Sorry I asked suck a dumb question.
  3503.  
  3504. I should of figured that one out for myself.  But, I've been only programming
  3505. in pascal for about a week now.  So I am likey to make some very dumb
  3506. mistakes.
  3507.  
  3508. John
  3509.  
  3510. --- ConfMail V4.00
  3511.  * Origin: Zone 8 NETWORK Gateway - (8:70/0)
  3512.  
  3513. *** Part of a conversation.
  3514.  
  3515.  
  3516. From:    John Young Of 77/7 
  3517. To:      Ross Wentworth                           Msg #182, 14-Jan-89 01:26pm
  3518. Subject: Re: Can not figure...
  3519.  
  3520. Sorry I asked suck a dumb question.  But, I've only been programming in pascal
  3521. for about a week now.   thanks for the help
  3522.  
  3523. john 
  3524.  
  3525. --- ConfMail V4.00
  3526.  * Origin: Zone 8 NETWORK Gateway - (8:70/0)
  3527.  
  3528. *** This is a reply to #181.
  3529.  
  3530.  
  3531. From:    John Young Of 77/7 
  3532. To:      Ben Lindstrom                            Msg #183, 14-Jan-89 01:27pm
  3533. Subject: Re: PRoblem
  3534.  
  3535. Thanks for the help.  Sorry for a dumb question.  But I've only been
  3536. programming in pascal for about a week.
  3537.  
  3538. John
  3539.  
  3540. --- ConfMail V4.00
  3541.  * Origin: Zone 8 NETWORK Gateway - (8:70/0)
  3542.  
  3543. *** This is a reply to #72.
  3544.  
  3545.  
  3546. From:    Patrick Edwards 
  3547. To:      Shannon Pope                             Msg #184, 13-Jan-89 12:43pm
  3548. Subject: Pascal4 & CCDos
  3549.  
  3550.  > Turbo Pascal 5.0 comes with a debugger built in or
  3551.  > something like that.
  3552.  >
  3553.  > I hear it also makes code a little more compact, it removes
  3554.  > unused data in units along with the unused code.
  3555. yes it does but it actualy makes it larger than TP4 does cause of the debugger
  3556. info but, you can turn off the debugging info. As for the 'it removes the
  3557. unused data in units along with the unused code', I just don't know I havn't
  3558. had it that long. 
  3559.  > Those are the only major differences I have read about, I
  3560.  > personally am to lazy to upgrade my copy.
  3561. I would suggest upgrading soon as the main stay of the PD units are written in
  3562. TP5 (eg Turbo Tech_no jock Tool kit, TPW60, and others) the reason for
  3563. upgrading are great you can quickly test, change, ect. bugs in a program. You
  3564. can use their highly advanced over lay system. The Manuals are great for
  3565. learning. 
  3566.  > Oh yeah, the strict rules conscerning the USES clause are
  3567.  > removed (thank God) in pascal 5.0.
  3568. I don't know if this is true or not.
  3569.  
  3570. --- ConfMail V4.00
  3571.  * Origin: Northern Nights | Keep Kool| (1:140/48)
  3572.  
  3573. *** This is a reply to #173.
  3574.  
  3575.  
  3576. From:    Colten D. Edwards 
  3577. To:      Chris Austin                             Msg #185, 13-Jan-89 09:50am
  3578. Subject: JBCOMM
  3579.  
  3580. Look for a package called Async10.arc on 1:152/2 or 1:140/48. It has complete
  3581. src with most written in asm. supports 4 com ports etc... Looks very good. And
  3582. no cry for money either. 
  3583.  
  3584. --- ConfMail V4.00
  3585.  * Origin: Treasure Isle Private Mail System (1:140/51)
  3586.  
  3587.  
  3588. From:    Mark Hopkins 
  3589. To:      Ben Lindstrom                            Msg #186, 13-Jan-89 07:07pm
  3590. Subject: Output to ...
  3591.  
  3592. In a message of <07 Jan 89 09:11:48>, Ben Lindstrom (1:282/19) writes:
  3593.  
  3594. >Var f:text;lin:string;x:integer;
  3595. >begin
  3596. >  assign(f,'Welcome.BBS');
  3597. >  reset(f);
  3598. >  while not eof(f) do
  3599. >  begin
  3600. >    readln(f,lin);
  3601. >    writeln(f,lin);  <----------------------------------------------|
  3602. >  end;                                                              |
  3603. >  close(f);                                                         |
  3604. >end.                                                                |
  3605.                                                                      |
  3606. Looks like you're writing back to the same file that you're reading from.  Try
  3607. writing to the auxiliary port (assuming you have it opened and have been
  3608. writing to it).
  3609.  
  3610.   while not eof(f) do
  3611.   begin
  3612.     readln(f,lin);
  3613.     writeln(AUX,lin);
  3614.   end;
  3615.   close(f);
  3616.  
  3617.  
  3618. --- msged 1.96S ZTC
  3619.  * Origin: SWAT: Blaise-ing Code! SeaSoft Network (1:343/8.13)
  3620.  
  3621. *** This is a reply to #155.
  3622.  
  3623.  
  3624. From:    Mark Hopkins 
  3625. To:      Walt Fair                                Msg #187, 13-Jan-89 07:44pm
  3626. Subject: Re: Self-Taught
  3627.  
  3628.  
  3629. >       Boy, did they misjudge! Actually BASIC was developed for 
  3630. >non-programmers, which explains why so many don't like it.
  3631. >                                                       Walt
  3632.  
  3633. After 6 months of COBOL classes I would have to say that COBOL is definitely
  3634. the language of "non-programmers".  This language must've been developed for
  3635. authors or others who just LOVE to type!!  
  3636.  
  3637. After working with Pascal I was able to go back to BASIC and really appreciate
  3638. some of the developments that have gone on with that language (speaking of
  3639. QuickBASIC and Turbo BASIC).  However, even COBOL 85 is as verbose and
  3640. sluggish as ever!!
  3641.  
  3642.  
  3643.  
  3644. --- msged 1.96S ZTC
  3645.  * Origin: SWAT: Blaise-ing Code! SeaSoft Network (1:343/8.13)
  3646.  
  3647. *** This is a reply to #149.
  3648.  
  3649.  
  3650. From:    Mark Hopkins 
  3651. To:      Shannon Pope                             Msg #188, 13-Jan-89 08:13pm
  3652. Subject: Re: A LITTLE PROBLEM
  3653.  
  3654.  
  3655. > :-) Doesn't look like a smiley face to me... Where did it originate from?
  3656.  
  3657. Tilt your head to the left so that you're looking at it sideways... Look
  3658. better now?  Also, try these variations:
  3659.  
  3660.    ;-)    #:)  8-O  
  3661.  
  3662. Just a little fun!!  Like...Pascal! Yeah, that's it!
  3663.  
  3664.  
  3665. --- msged 1.96S ZTC
  3666.  * Origin: SWAT: Blaise-ing Code! SeaSoft Network (1:343/8.13)
  3667.  
  3668. *** Part of a conversation.
  3669.  
  3670.  
  3671. From:    Paul West 
  3672. To:      Mark Hopkins                             Msg #189, 14-Jan-89 03:45am
  3673. Subject: Files
  3674.  
  3675. In a message of <12 Jan 89 20:45:42>, Mark Hopkins (1:343/8.13) writes:
  3676.  
  3677.  -=>In reference to my previous message, it's actually not a very good idea 
  3678.  -=>to use the user's name as a key field.  You want something that is 
  3679.  -=>going to be unique to each record.  I used the UserName field hoping 
  3680.  -=>that it would make things a little clearer.  You could have two users 
  3681.  -=>with the same name and, if that were the case, which ever one was first 
  3682.  -=>in the list would always be the one that was used.  You would never get 
  3683.  -=>to the second one.  Anyway, be sure to use a unique field as your key.
  3684.  
  3685. I havn't seen a BBS yet that allows more than one user per name.  Names have 
  3686. traditionally been the means of identifying the user.   There have from time 
  3687. to time been collisions, but that is usually solved by having the second user 
  3688. change his/her name for use on the BBS slightly.
  3689.  
  3690.  
  3691. --- msged 1.96S ZTC
  3692.  * Origin: P.I.E.  [Everett, Wa]  -=> HST <=- (1:343/27) -  (1:343/400)
  3693.  
  3694. *** This is a reply to #49.
  3695.  
  3696.  
  3697. From:    Stephen Cook 
  3698. To:      All                                      Msg #190, 14-Jan-89 06:37am
  3699. Subject: LEARnPAS Echo
  3700.  
  3701. I am located in the Seattle, Washington, USA area. I am looking for
  3702. the LEARnPAS Echo that was talked about here at the end of 1988. Does
  3703. anyone have any information on if it is up, or where I can get it.
  3704. I'd prefer getting it in Washington State, but that is not a priority.
  3705. Please Reply.
  3706.  
  3707.  
  3708. ---
  3709.  * Origin: BECS MSDOS OPUS, Bellevue, WA - 206/451-1274 (Opus 1:343/101)
  3710.  
  3711.  
  3712. From:    Lawrence Lessing 
  3713. To:      Djoerd De.fost                           Msg #191, 14-Jan-89 06:07pm
  3714. Subject: Virus...
  3715.  
  3716.  
  3717. What happened to your original message? Did you delete it??? hmmmmmmm?????
  3718.  
  3719. Yes, I once wrote a virus that got past programs that locked up hard drives
  3720. and prevented writes to them... But I never released it to the public. I think
  3721. anybody who does such a thing is a Sick, Domented, Jack Ass...
  3722.  
  3723. But I wrote one, so I guess I am just part way there...
  3724.  
  3725.                                         -> Lawrence
  3726. --- QuickBBS v2.03
  3727.  * Origin: Torrance BBS * Los Angeles, CA * (213) 370-9027 * (1:102/345)
  3728.  
  3729.  
  3730. From:    Jeff Robertson 
  3731. To:      All                                      Msg #192, 13-Jan-89 05:32pm
  3732. Subject: MODEM PROGRAMMING
  3733.  
  3734.   Does anyone know how to answer a Hayes compatible modem in Turbo?  As well
  3735. as open (assign) the channel to communicate?  I would like to try my hand at
  3736. programming a Turbo BBS, but I'm stumped before I'm started!
  3737.  
  3738.   Ok here's another one ... does the EXEC command erase the resident program
  3739. and load a new one?
  3740.  
  3741. ps: These are all question refering to version 4.0
  3742. --- TBBS v2.0
  3743.  * Origin: End Floods Today With Emperor Stringettes  (120/46)
  3744.  
  3745.  
  3746. From:    Michael Adamson 
  3747. To:      Greg Franklin                            Msg #193, 14-Jan-89 12:16am
  3748. Subject: Re: A COMPUTER TERM
  3749.  
  3750. Actually it's not a computer word at all, it stands for [F]&%# [U]p [B]eyond
  3751. [A]ll [R]epair/[R]edemption...ie...FUBAR...Rgds..Mike..
  3752. --- TBBS v2.0
  3753.  * Origin: End Floods Today With Emperor Stringettes  (120/46)
  3754.  
  3755. *** Part of a conversation.
  3756.  
  3757.  
  3758. From:    Clayton Zekelman 
  3759. To:      Michael Adamson                          Msg #194, 14-Jan-89 01:06am
  3760. Subject: Re: A COMPUTER TERM
  3761.  
  3762.  
  3763. I beleive the FUBAR term is linked to the U.S. Military, along with the term
  3764. SNAFU - <S>ituation <N>ormal - <A>ll <F>ouled (Grin) <U>p.  I beleive it was
  3765. also quite popular with NASA during the 60's and 70's.
  3766.  
  3767. >>Clayton<<
  3768. --- TBBS v2.0
  3769.  * Origin: End Floods Today With Emperor Stringettes  (120/46)
  3770.  
  3771. *** Part of a conversation.
  3772.  
  3773.  
  3774. From:    Tim Geisweit 
  3775. To:      All                                      Msg #195, 16-Jan-89 06:56am
  3776. Subject: Re: A Little Problem
  3777.  
  3778.  >
  3779.  > You need to direct this at TG> not LC>   I am not responsible
  3780.  > for that text you quoted  (I think I quoted it in a message
  3781.  > to TG>)
  3782.  
  3783. Hey, I'm tired of my messages being bounced around and misinterpreted. 
  3784.  
  3785. ---
  3786.  * Origin: CrossFire  Harrisburg, PA (717)564-9519 (Opus 1:150/514)
  3787.  
  3788. *** Part of a conversation.
  3789.  
  3790.  
  3791. From:    Tan Km 
  3792. To:      Mike Hinds                               Msg #196, 14-Jan-88 12:40pm
  3793. Subject: Re: Reserved "Word"
  3794.  
  3795. Just for info, you can used most of the reserved word for your symbol, but
  3796. beware that you will get confusing compilation messages when you used those
  3797. symbol out of context. In short TP let you redefined what it has set up for
  3798. you.
  3799. --- QuickBBS v2.03
  3800.  * Origin: Minfo - QBBS is quick! but slowed down by 1200 modem (3:600/17)
  3801.  
  3802.  
  3803. From:    Tan Km 
  3804. To:      Dave Hess                                Msg #197, 14-Jan-88 12:50pm
  3805. Subject: Re: WEll Now I need help on something else
  3806.  
  3807. Try using the FSearh facility provided by TP5.0. The problem with using this
  3808. function is, you will have to set up the search path, similar to the PATH
  3809. format. It will be simpler it you will to use FindFirst all subdirectory and
  3810. then FindFirst the file in those sub-directory.
  3811.  
  3812. Sayonara..........-* Falcon *-
  3813. --- QuickBBS v2.03
  3814.  * Origin: Minfo - QBBS is quick! but slowed down by 1200 modem (3:600/17)
  3815.  
  3816.  
  3817. From:    Dave Goggin 
  3818. To:      Jesper Wolf                              Msg #198, 17-Jan-89 08:31pm
  3819. Subject: Re: HOW TO WRITE A VIRUS IN PASCAL.
  3820.  
  3821.    That is right not to tell about the methods for virus production.. this
  3822. Echo is for constructive information, not for virus methods that could kill us
  3823. all..!!..!!..!!
  3824. --- TBBS v2.0
  3825.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  3826.  
  3827. *** This is a reply to #93.
  3828.  
  3829.  
  3830. From:    Dave Goggin 
  3831. To:      All                                      Msg #199, 17-Jan-89 08:47pm
  3832. Subject: NAME
  3833.  
  3834. hey folks, the name is Dave Goggin, not 'Dave Gogarin'  just wanted you to
  3835. know....
  3836. --- TBBS v2.0
  3837.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  3838.  
  3839.  
  3840. From:    Dave Goggin 
  3841. To:      Jonathan Posner                          Msg #200, 17-Jan-89 08:50pm
  3842. Subject: GOOD PASCAL BOOK.
  3843.  
  3844. I can reccomend a good one, which is good, but a little padantic.
  3845. >> Building Pascal Programs
  3846.  
  3847. by a Stuart Reges.  Check this one out.
  3848. --- TBBS v2.0
  3849.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  3850.  
  3851.  
  3852. From:    Paul Lindquist 
  3853. To:      Kevin Carr @ 930/1                       Msg #201, 16-Jan-89 10:16pm
  3854. Subject: Re: PASCAL --> BASIC
  3855.  
  3856. I've seen programs that convert Basic to C and C to Pascal and Pascal to C,
  3857. but not from Pascal to Basic.  You will find Pascal is a better language to
  3858. learn, compiled code is lots smaller, and execution is tremendously faster.
  3859.  
  3860. Paul Lindquist
  3861. --- TBBS v2.0
  3862.  * Origin: Tulsa on the Arkansas,  Thanks to PC-Designs 918-744-0249 (170/210)
  3863.  
  3864. *** This is a reply to #27.
  3865.  
  3866.  
  3867. From:    Andy Lester 
  3868. To  Now, 846 places listed out of 5000+ Nodes worlonth.   HST's;40;32mMsg #202, 16-Jan-89 09:07pm
  3869. Subject: Re: MLC versus PASCAL
  3870.  
  3871.  JW> Mostly its not neccesary with more than just a coupple of 
  3872.  JW> assembler routines, but they might speed things up quite a bit.
  3873.  
  3874. Most programs seem to follow the 90/10 rule:  90% of the execution time is 
  3875. used up by 10% of the code.  There's a book out by Jon Bentley, perhaps, not 
  3876. sure about the name, called _Writing Efficient Programs_, or something to 
  3877. that effect.  (Fountain of facts, aren't I?)  He made a very good point to 
  3878. keep in mind when optimizing a program for speed:
  3879.  
  3880.   "For something to take a long time, it has to be executed a lot"
  3881.  
  3882. Forget the initialization routines, as they're only executed once, and focus 
  3883. on the hardcore meaty stuff, like CRC checking, or whatever good intensive 
  3884. stuff you may be doing.
  3885.  
  3886. Andy
  3887.  
  3888.  
  3889. --- msged 1.96S ZTC
  3890.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  3891. (1:115/790.2)
  3892.  
  3893. *** This is a reply to #99.
  3894.  
  3895.  
  3896. From:    Andy Lester 
  3897. To:      Heikki Levanto                           Msg #203, 16-Jan-89 09:11pm
  3898. Subject: Re: Pascal Programming BBS
  3899.  
  3900. Hmm, luckily I don't fall into those categories:
  3901.  
  3902.  HL> True enough.  It is because 'professionals' have three drawbacks:
  3903.  HL>   - It's their work, and nobody is supposed to like his work
  3904.  
  3905. I work in a small shop, and get lots of feedback from my users (mostly cute 
  3906. young office girls :-).  It's a buzz for me to be told "Hey, that's great!  
  3907. That's going to help me out."
  3908.  
  3909.  HL>   - They have to follow some stupid house standards
  3910.  
  3911. Nope.  I set my own.  
  3912.  
  3913.  HL>   - The deadline was yesterday
  3914.  
  3915. Deadlines?  What are those?  I think I've had maybe 3 deadlines in 3 years.
  3916.  
  3917. My shop may not be the most conducive to producing good code, but it's 
  3918. certainly not restricted and stilted enough to make me dread new projects.
  3919.  
  3920. Andy
  3921.  
  3922.  
  3923. --- msged 1.96S ZTC
  3924.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  3925. (1:115/790.2)
  3926.  
  3927. *** This is a reply to #103.
  3928.  
  3929.  
  3930. From:    Andy Lester 
  3931. To:      Scott Samet                              Msg #204, 16-Jan-89 09:14pm
  3932. Subject: >16 Files
  3933.  
  3934.  AL> fn:=SmallerString(concat('c:\tmp\',fn,'.tst');
  3935.  
  3936.  SS> I've tried anything I could think of.  Any time a function or operator 
  3937.  SS> (+) returns a string expression, the compiler allocates a 256 byte 
  3938.  SS> temporary.
  3939.  
  3940. So how much of a tradeoff is there to rewrite the above as:
  3941. fn:='c:\tmp\'+fn;
  3942. fn:=fn+'.tst';
  3943.  
  3944. Andy
  3945.  
  3946.  
  3947. --- msged 1.96S ZTC
  3948.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  3949. (1:115/790.2)
  3950.  
  3951. *** This is a reply to #109.
  3952.  
  3953.  
  3954. From:    Loyd Craft 
  3955. To:      Patrick Farrell                          Msg #205, 16-Jan-89 03:44pm
  3956. Subject: Re: 300 BAUD
  3957.  
  3958. In a message of <14 Jan 89 02:23:05>, Patrick Farrell (1:132/777) writes:
  3959.  
  3960. >Gee, I am impressed. I bet he can call about 2 places!
  3961. >That's about all that support 9600 baud. 
  3962.  
  3963.   More and more Fidonet nodes are acquiring HST's  I did a search through 
  3964. NODELIST.013 just a second ago, and I found 846 occurrences of the label 'HST'
  3965. on the comment section of the nodelist entries.   I do not know how many are
  3966. repeat entries (Such as the NEC/NC positions/etc..)    And I also do not know
  3967. how many HST's are running now, and not listed.   This seems to me, MANY
  3968. fingers above 2..  (In fact I had to gather 84 friends just to do the
  3969. arithmetic)   Now, 846 places listed out of 5000+ Nodes worlonth.   HST's pay for
  3970. themselves within a year if you make LD links all the time.
  3971.  
  3972. >I would not get a 48 or 96 or even 19200 baud modem,
  3973. >because I could not use it anywhere.
  3974.  
  3975. This is JUST NOT TRUE.  People who have the higher speed modems simply have to
  3976. look a little.  In Many echos people will announce "Available Via HST..." etc.
  3977. I think your aprehension about 9600 and beyond is just of price, which can be
  3978. justified in the elong run.  You bleed at first because of the payment, but
  3979. you will eventually forget the cost, and enjoy lower LD bills.
  3980.  
  3981.  
  3982. >Besides a c128 can't transmit faster that 1200 :-)
  3983.  
  3984.  I constantly do C128 transmissions at 2400 baud with a 89% efficiency, or
  3985. 2136 baud (Only a little slower than many 4.77 Mhz clones at 2400, downloading
  3986. to floppy)
  3987.  
  3988. BTW,   PASCAL...
  3989.  
  3990. Apologies to all..
  3991.  
  3992.  
  3993. --- msged 1.96S ZTC
  3994.  * Origin: MicroCosm Opus Owosso, Mi. (517)-725-8077  (1:159/900)
  3995.  
  3996. *** Part of a conversation.
  3997.  
  3998.  
  3999. From:    Steve Barnett 
  4000. To:      Andy Lester                              Msg #206, 15-Jan-89 08:49pm
  4001. Subject: Re: A Little Problem
  4002.  
  4003. AL> Well, I'm makin' about half of what "everyone else" is making,
  4004. AL> according to   InfoWorld surveys, but I also have no college degree
  4005. AL> and walked in cold off   the street, basically.  I'd noodled around
  4006. AL> with Turbo Pascal before I took   this job, but nothin' serious or
  4007. AL> work-related.
  4008. AL> Andy
  4009.  
  4010. I am just beginning my "noodlin" days with Turbo Pascal & I would be to
  4011. know what kind of buisiness that decided to use your talents if I may ask.
  4012. Do you use Turbo Pascal on the job?
  4013. Curious Steve
  4014.  
  4015.  
  4016. --- Via OpXpress V1.06ß "Silver"  ..Don't Settle For Less..
  4017.  * Origin: MicroCosm Opus  Owosso, Mi; (517)-725-8077
  4018.  
  4019. *** Part of a conversation.
  4020.  
  4021.  
  4022. From:    Bob Wiley 
  4023. To:      Tomas Gradin                             Msg #207, 15-Jan-89 11:39am
  4024. Subject: Re: TP 4.0 and different problems
  4025.  
  4026. Tomas,
  4027.       First off, I'd like to thank you for the help with my problems I've
  4028. been having lately in TP 4.0.  Another thing I've been wondering is, the
  4029. TP 4.0 programmer's manual mentions only 1 way of initializing the graph
  4030. unit.  It looks something like this:
  4031.  
  4032.           uses Crt, Graph;
  4033.  
  4034.           var
  4035.              Graphdriver, Graphmode : Integer;
  4036.  
  4037.           begin
  4038.              Graphdriver := Detect;
  4039.              Initgraph(Graphdriver, Graphmode, '');
  4040.              If Graphresult <> grOk then
  4041.                     Halt(1);
  4042.  
  4043. This example came directly from the book, but what I'm curious about is if
  4044. there is an easier and/or faster way to do so.
  4045.  
  4046.  >
  4047.  > Advice: Upgrade!!
  4048.  >
  4049.  
  4050. Seems like pretty good advice, thanks... I will.  From what I've been
  4051. hearing around the echo lately, and from what I've been hearing at college,
  4052. it sounds like money well spent.
  4053.  
  4054.  >  > Any help would be appreciated.....
  4055.  >
  4056.  > I'm sure many of us here will be glad to help!
  4057.  >
  4058.  > Best Regards,
  4059.  > Tomas
  4060.  >
  4061.  
  4062. I'm glad to hear that Tomas, the problem I have out here is that most people
  4063. are so much into the Macintosh, that I have problems when I use the knowledge
  4064. from the Mac on the IBM.  Usually, the problems are small differences in the
  4065. machines (ie. Text windows & Drawing windows on the Mac).  Once again...
  4066. Thanks.
  4067.  
  4068.                                             Best Wishes,
  4069.  
  4070.  
  4071.                                             Bob Wiley
  4072.  
  4073.  --- Ned 1.01
  4074. ---
  4075.  * Origin: Cross-Fire BBS -- Columbus, Ohio (614) 294-5216 (Opus 226/170)
  4076.  
  4077. *** This is a reply to #145.
  4078.  
  4079.  
  4080. From:    Bruce Mahoney 
  4081. To:      Eugene Baral                             Msg #208, 16-Jan-89 07:22pm
  4082. Subject: Re: Is the Pgm in the Path
  4083.  
  4084. Thanks. That should reduce my program quite a bit.
  4085. --- QuickBBS v1.02
  4086.  * Origin: Somewhere on Cherry St. (170/211)
  4087.  
  4088. *** This is a reply to #9.
  4089.  
  4090.  
  4091. From:    Bruce Mahoney 
  4092. To:      Gary Lagier                              Msg #209, 16-Jan-89 07:50pm
  4093. Subject: Re: TP5 Files
  4094.  
  4095. Does this offer include me? This msg was left the same day I called TC.
  4096. Please Reply if I haven't called back.      Thanks.
  4097. --- QuickBBS v1.02
  4098.  * Origin: Somewhere on Cherry St. (170/211)
  4099.  
  4100. *** This is a reply to #47.
  4101.  
  4102.  
  4103. From:    Justin Marquez 
  4104. To:      Lou Garner                               Msg #210, 17-Jan-89 10:16am
  4105. Subject: Re: 300 BAUD
  4106.  
  4107.  LG| 
  4108.  LG| I don't think this is correct.  People calling a board have a list of
  4109.  LG| things to do, and will take the time to finish that work.  A 300 baud
  4110.  LG| caller will take EIGHT TIMES as long as someone at 2400 and FOUR TIMES
  4111.  LG| as long as someone at 1200.
  4112.  LG| 
  4113.  LG| Do you want one caller blocking up to SEVEN others?  If so, your board
  4114.  LG| isn't very busy. 
  4115.  
  4116.        My public bbs, Artichoke 106/60, is no longer online as I had to shut 
  4117. it down shortly after taking the RC job. (Workload got too heavy...) While it 
  4118. was up, it was a quite popular BBS in Houston, averaging about a 75% total 
  4119. usage factor. Mostly for downloads. I had over 1000 users in the user.bbs 
  4120. file and I purged it about once a month, too.
  4121.  
  4122.  LG| If you believe that everyone uses all of their
  4123.  LG| available minutes each call, then I have to say I do not see that on
  4124.  LG| my board.
  4125.  LG| 
  4126.  
  4127.        Simple solution - give everybody a reasonable number of minutes/call 
  4128. and minutes/day. Sure, if you allow 2 hours/call, people may abuse that. Give 
  4129. 'em 30 minutes a call and an hour max/day. MANY files cannot be downloaded in 
  4130. 30 minutes at 300 baud. That'll encourage folks to pop for a faster modem 
  4131. than anything else. But to disallow 300 baud at all cuts them out of the msg 
  4132. base all together.
  4133.  
  4134.  
  4135. --- msged 1.96S ZTC
  4136.  * Origin: Region 19 Coordinator  (1:106/100)
  4137.  
  4138. *** This is a reply to #205.
  4139.  
  4140.  
  4141. From:    Rich Myers 
  4142. To:      Heikki Levanto                           Msg #211, 17-Jan-89 04:54pm
  4143. Subject: Next TP version
  4144.  
  4145.  >  > Can't help but wonder where Kahn is going to take
  4146.  > TP from here.  Can
  4147.  >  > you think of something lacking in TURBO PASCAL now?
  4148.  >  I can't.
  4149.  >  
  4150.  > - Less memory requirements
  4151.  > - Parallel programming
  4152.  > - Tightly following some standards ( ANSI ) ( optional,
  4153.  > I hope )
  4154.  > - 3D graphics
  4155.  > - Pascal++ ( that is object oriented stuff, I don't
  4156.  > know how )
  4157.  > - Faster compilation ( yes, but still faster )
  4158.  > - Logic programming ( like in Prolog )
  4159.  > - Mouse support in programs and in the Integrated Environment
  4160.  > - DWIM ( Do What I Mean ) and self-correcting syntax
  4161.  > check
  4162.  >  
  4163.  > I'll find more before he's got all these out !
  4164.  >  
  4165.  > yours
  4166. I like the suggestions but would like to add another....
  4167.  
  4168. I am forced to use the integrated environment at work and feel that the 64k
  4169. file size limit should be fixed...(That is the only reason I have to use the
  4170. environment - the editor).
  4171.  
  4172. We compile using TPC in another DV window and I can't use my own editor
  4173. because you can edit unlimited size files.
  4174.  
  4175. Rich
  4176.  
  4177. --- Operetta V0.5.1Γ
  4178.  * Origin: The Twilight Zone (713) 497-5778 (1:106/301)
  4179.  
  4180.  
  4181. From:    Bruce Mahoney 
  4182. To:      Dave Smith                               Msg #212, 17-Jan-89 04:28pm
  4183. Subject: TSRs
  4184.  
  4185. { Much big pgm then : }
  4186.   Keep( 0 )     { Terminate, stay resident }
  4187. END.
  4188. --- QuickBBS v1.02
  4189.  * Origin: Somewhere on Cherry St. (170/211)
  4190.  
  4191. *** This is a reply to #150.
  4192.  
  4193.  
  4194. From:    Micah Bleecher 
  4195. To:      Tony Shelton                             Msg #213, 17-Jan-89 08:23pm
  4196. Subject: Re: pd-compiler
  4197.  
  4198.  TS> There are two that I know of.  One is VISIBLE Pascal.  Don't know 
  4199.  TS> where
  4200.  TS> find it though.  Another can be found on Compu$erve in the IBMPRO 
  4201.  TS> forum.
  4202.  TS> It is supposed to have an integrated environment, but since I've not
  4203.  TS> used it, I cannot comment on it.
  4204.  
  4205.  
  4206. You can Freq VISPAS.ARC from me --- 106/12 ----
  4207.  
  4208.  
  4209. Micah
  4210.  
  4211.  
  4212. --- Msg V3.2
  4213.  * Origin: SoundingBoard - YooHoo 2 Ya'll 2 - (713)821-4148 (1:106/12)
  4214.  
  4215. *** This is a reply to #168.
  4216.  
  4217.  
  4218. From:    Micah Bleecher 
  4219. To:      Mark Hopkins                             Msg #214, 17-Jan-89 08:30pm
  4220. Subject: Re: A LITTLE PROBLEM
  4221.  
  4222.  
  4223.  MH> > :-) Doesn't look like a smiley face to me... Where did 
  4224.  MH> it originate from?
  4225.  
  4226.  MH> Tilt your head to the left so that you're looking at it 
  4227.  MH> sideways... Look better now?  Also, try these variations:
  4228.  
  4229.  MH>    ;-)    #:)  8-O  
  4230.  
  4231.  
  4232.  
  4233.  
  4234. Dont forget the mirrord shade look  B-D  (flame protection) 
  4235.  
  4236. --- Msg V3.2
  4237.  * Origin: SoundingBoard - YooHoo 2 Ya'll 2 - (713)821-4148 (1:106/12)
  4238.  
  4239. *** Part of a conversation.
  4240.  
  4241.  
  4242. From:    David Vins 
  4243. To:      Micah Bleecher                           Msg #215, 17-Jan-89 03:32pm
  4244. Subject: Re: Virus in Pascal 4.0
  4245.  
  4246.   Yes, no help to anyone under his name!!!
  4247. s
  4248. --- QuickBBS v2.03
  4249.  * Origin: The Outpost │ Nashua NH »HST« (1:132/113)
  4250.  
  4251. *** This is a reply to #153.
  4252.  
  4253.  
  4254. From:    Tom Bradford 
  4255. To:      Heikki Levanto                           Msg #216, 16-Jan-89 01:56pm
  4256. Subject: Re: Style Debate #9,005
  4257.  
  4258.    How can one put a standard implementation style on the Uses statement?
  4259. Since its basically new (And only used in TP 4 and 5) there can be no standard
  4260. style.
  4261.    I don't remember Niklaus Wirth saying "Yeah, when Borland invents Units,
  4262. the style of referring to them will be:
  4263. Uses
  4264.    ...
  4265.    ...
  4266. "
  4267. On a matter of personal preference, I like keeping them on the same line, this
  4268. reduces source code sizes (because of the non-inclusion of the CR/LF line
  4269. terminator).
  4270.  
  4271. Here is how most of my Uses statements are setup.
  4272.  
  4273. Uses DOS,CRT,FXWindow,FXInput,FXPullDown;
  4274.  
  4275. Where:
  4276.    DOS is the Turbo Pascal DOS Unit.
  4277.    CRT is the Turbo Pascal CRT Unit.
  4278.    FXWindow is F/X-Software Systems' Windowing Unit (My Windowing Unit)
  4279.    FXInput is F/X-Software Systems' String Input Unit (As Well)
  4280.    FXPullDown is F/X-Software Systems' Pull-Down Menu Unit (As Well)
  4281.  
  4282. So long as "I" know what the Units do, I don't think they should have comments
  4283. or be on seperate lines.  If the source were to be released into the public
  4284. domain, then you may want to write a description text file on what the
  4285. different Units do, but otherwise, it basically clutters up your source code.
  4286.  
  4287. BTW all, the January 15th update of F/X-Windows is now on my board in the
  4288. Turbo Pascal file area.  Whether you want to upgrade to this release or have
  4289. never heard of it before, you may just want to download this update.
  4290.  
  4291. The F/X-BBS - (617)567-8993 (1200/300BPS) - SysOp: Tom Bradford
  4292. ^^^^^^^^^^^
  4293.  
  4294.  
  4295. ---
  4296.  * Origin: INFOWORKS-BBS-Boston,Ma.(617-923-7373) "The future is now." (Opus
  4297. 1:101/420)
  4298.  
  4299. *** Part of a conversation.
  4300.  
  4301.  
  4302. From:    Gilbert Edwards 
  4303. To:      All                                      Msg #217, 16-Jan-89 03:26pm
  4304. Subject: Sort Units
  4305.  
  4306. Hello To All,
  4307.  I am looking for a sort unit where I can specify field and maximum
  4308. number of records. I have a database program that I am writing that needs the
  4309. records sort on a key field.I prefer not to use and external
  4310. program cause I would like to distribute it as shareware. Any help would be
  4311. appreciated.
  4312.  
  4313.  
  4314. ---
  4315.  * Origin: INFOWORKS-BBS-Boston,Ma.(617-923-7373) "The future is now." (Opus
  4316. 1:101/420)
  4317.  
  4318.  
  4319. From:    Frank Barrus 
  4320. To:      All                                      Msg #218, 16-Jan-89 04:25pm
  4321. Subject: File Existance...
  4322.  
  4323. Does anyone out there know a fast and efficient way
  4324. to check for the existance of a file and get the file
  4325. size in Turbo Pascal 5.0?  
  4326. Basically, the only way I have is to try resetting the
  4327. file, and if it's successful, get the file size, then
  4328. close the file... but this takes time and causes unnecessary
  4329. hard drive access...
  4330. Is there some simple way to read this info directly from 
  4331. a directory without first opening the file, and could someone
  4332. write me a simple procedure to do so?
  4333.  
  4334.  
  4335. ---
  4336.  * Origin: Dave's OPUS!/BINK *SDS*SDN*HST* Lowell MA (Opus 1:324/275)
  4337.  
  4338.  
  4339. From:    Jody Shapiro 
  4340. To:      All                                      Msg #219, 17-Jan-89 02:18pm
  4341. Subject: Turbo Pascal 4.0 & The Modem
  4342.  
  4343. Hi!
  4344.  
  4345.         I'm new to both Pascal and this conference.  I'm working on an
  4346. on-line game for BBS's, but am having a little trouble with that !@#$%^&*()
  4347. modem...  I FREQ'ed Tony Hsieh's TP4 Fossil Driver routines, but these are
  4348. kind of buggy, and half the time I get a "FOSSIL NOT RESPONDING!  ALL
  4349. OPERATIONS HALTED!" msg.  Does anyone have ANYTHING in TP4 that outputs to
  4350. the modem with or without Tony's routines?  Any tips?
  4351.  
  4352. Thanks, I'd really appreciate it!
  4353.  
  4354. P.S. If possible, you could make
  4355. --- QuickBBS v2.03
  4356.  * Origin: <The ToolBox>  Boston, Mass  [MABOS] 617-364-2474 (1:101/160)
  4357.  
  4358.  
  4359. From:    Bruce Mahoney 
  4360. To:      Jonathan Posner                          Msg #220, 16-Jan-89 09:29pm
  4361. Subject: Re: pascal
  4362.  
  4363. Mastering Turbo Pascal 4.0 by Tom Swan
  4364. --- QuickBBS v2.03
  4365.  * Origin: ]≡[ The Pascal Programmer's Club ]≡[ (918) 438-2749 (1:170/403)
  4366.  
  4367. *** This is a reply to #114.
  4368.  
  4369.  
  4370. From:    John Anderson 
  4371. To:      All                                      Msg #221, 16-Jan-89 07:51am
  4372. Subject: QBBS
  4373.  
  4374. Anyone know why I am getting a runtime error when I try to startup QBBS? Any
  4375. help on the matter will be arrpeciated.
  4376. --- QuickBBS v2.03
  4377.  * Origin: Beaker's Beacon (1:115/212)
  4378.  
  4379.  
  4380. From:    Andy Lester 
  4381. To:      All                                      Msg #222, 16-Jan-89 04:31pm
  4382. Subject: Horrible coding bug #47
  4383.  
  4384. I just saw the worst bit of code I've seen in some time.  It went like this:
  4385.  
  4386. for i:=1 to 12 do
  4387.   begin
  4388.   do_this;
  4389.   do_that;
  4390.   if Some_Finished_Condition then i:=13;
  4391.   write(i);
  4392.   end;
  4393.  
  4394. Blech!  Blech!  Modifying loop counters.  This achieves it's goal of exiting 
  4395. before getting to 12 in UCSD Pascal, but in Turbo it won't.  (Preface:  In 
  4396. Turbo versions 2.0 & 3.0 it won't).  It'll increment i, but Turbo doesn't 
  4397. check the variable as the loop counter.  So, if on the first time through the 
  4398. loop it met that condition, output would be:
  4399. 1 13 14 15 16 17 18 19 20 21 22 23
  4400. but in UCSD it would be:
  4401. 1
  4402.  
  4403. Andy
  4404.  
  4405.  
  4406. --- msged 1.96S ZTC
  4407.  * Origin: CONST PointName='Paradise City'; death=true; taxes=true;
  4408. (1:115/790.2)
  4409.  
  4410.  
  4411. From:    Matt Franckiewicz 
  4412. To:      Jim Forbes                               Msg #223, 14-Jan-89 12:34pm
  4413. Subject: Bypassing the opening
  4414.  
  4415. Thanks for your response.  In the meantime, I also discovered that using a
  4416. pick file{ causes the opening screen to be bypassed.
  4417.  
  4418.  
  4419. ---
  4420.  * Origin: THE SMORGAS-BOARD  Monroeville, PA  1-412-733-3010 (Opus 1:129/32)
  4421.  
  4422.  
  4423. From:    Matt Franckiewicz 
  4424. To:      Andy Lester                              Msg #224, 14-Jan-89 12:40pm
  4425. Subject: The extra ;
  4426.  
  4427. I agree with you about adding the semicolon after the last statement in a
  4428. block.  It is superfluous, but what does it cost?  It costs one byte in your
  4429. source file.  That's all.  I checked it, and an extra semicolon does not
  4430. increase the length of the .exe file (at least in TP4.0), such as by adding a
  4431. NOP to the exe.  MeMeanwhile, the benefit from doing it is that if you later
  4432. add a line at the end of the source, there   is a fair chance you would forget
  4433. to add a semicolon after what had been the last line, and you get a compiler
  4434. error message.
  4435.  
  4436. Two minutes{ of my time versus one byte in a source file?  The answer is clear
  4437. to me.
  4438.  
  4439.                 {
  4440.  
  4441.      <co17's9F
  4442.  
  4443.                {
  4444.  
  4445.               r
  4446.  
  4447.  
  4448. ---
  4449.  * Origin: THE SMORGAS-BOARD  Monroeville, PA  1-412-733-3010 (Opus 1:129/32)
  4450.  
  4451.  
  4452. From:    Hector Santos 
  4453. To:      Tim Geisweit                             Msg #225, 13-Jan-89 12:32am
  4454. Subject: Re: goto's
  4455.  
  4456.  >>
  4457.  >> Why should you avoid it?   Goto's speeds up execution.
  4458.  >>  :-)
  4459.  >>
  4460.  TG>  
  4461.  TG> You're right, they do. They also leave a mess for the 
  4462.  TG> programmer to debug. I'd rather have a program I can fix than 
  4463.  TG> one which does the wrong thing very fast. <grin> 
  4464.  TG>
  4465.  
  4466. Are you saying you couldn't tackle a program with goto's? Too hard
  4467. to understand? Can't handle them? What's the beef? <growl>
  4468.  
  4469. "Real Programmers never have excuses!"
  4470.  
  4471. <hec>
  4472.  
  4473. --- Via Silver Xpress V2.10G  Late Night with Xpress!
  4474.  * Origin: Pitt Xpress : Home of Opus Xpress (412) 864-2294 (1:129/82)
  4475.  
  4476.  
  4477. From:    Hector Santos 
  4478. To:      Bill Sawyer                              Msg #226, 14-Jan-89 01:45am
  4479. Subject: Re: Philosophy
  4480.  
  4481.  BS> Thank you.  It is obvious that you have been in the programming 
  4482.  BS> business long enough to learn this simple LAW.  Namely, A 
  4483.  BS> PROGRAMMER SHALT WRITE MAINTAINABLE CODE.  What that means is 
  4484.  BS> that it must be MODULAR (in some way shape or form), LOGICAL 
  4485.  BS> (in your own convoluted way), and thoroughly DOCUMENTED (so 
  4486.  BS> that another can easily decipher your MODULAR design and 
  4487.  BS> LOGICAL construction).  If you have any desire to become a 
  4488.  BS> top-paid programmer of any sorts, you will sooner or later have 
  4489.  BS> to come around to these standards.  Take my word on it.  But, 
  4490.  BS> I'm certain that there are those of you out there who still 
  4491.  BS> believe that good pre-coding design (i.e. flowcharting, 
  4492.  BS> pseudo-coding, CASE tooling, etc.) are time consuming bunches 
  4493.  BS> of hog-wash.  And that post-coding documentation is equally 
  4494.  BS> useless.  To those of you who feel this way, THANKS!  You make 
  4495.  BS> me look a 1,000 times smarter than I am.  You also ensure that 
  4496.  BS> I get paid more than most of you will ever dream. Adios
  4497.  BS> 
  4498.  
  4499. To each his own.
  4500.  
  4501. <hec>
  4502.  
  4503. --- Via Silver Xpress V2.10G  Late Night with Xpress!
  4504.  * Origin: Pitt Xpress : Home of Opus Xpress (412) 864-2294 (1:129/82)
  4505.  
  4506. *** Part of a conversation.
  4507.  
  4508.  
  4509. From:    Sam Almassri 
  4510. To:      John Wyatt                               Msg #227, 16-Jan-89 06:16am
  4511. Subject: Re: sounds
  4512.  
  4513. can you have letter spelling with these two procedure, is there any kind of
  4514. componiation of the the sound and delay procedure for that or they use
  4515. different kind of procedure?
  4516. --- QuickBBS v2.03
  4517.  * Origin: Bytes 'R Us; San Ysidro CA (619) 428-9773 (1:202/112)
  4518.  
  4519.  
  4520. From:    Lawrence Lessing 
  4521. To:      Brian Foley                              Msg #228, 16-Jan-89 07:59am
  4522. Subject: Re: bbs's in TP??
  4523.  
  4524. Yes, I have the converted version. It comes with a strange addition that runs
  4525. the new users through a "torture test." In other words, the new user is given
  4526. about 20 questions and must score at least a 70%... This is great for
  4527. filtering out the paper brains...
  4528.  
  4529. The only problem with the converted version is that it does not allow running
  4530. online games because TurboPascal 4.0/5.0 do not support chaining... But I have
  4531. a unit/program by TurboPower software that allows chaining so it might work...
  4532.  
  4533. You can get the converted version from the Soapbox 1 BBS. The Sysop is the
  4534. writer of the multi-line version of it. Call 213-422-2261 and experience the
  4535. turture test for yourself!!!
  4536.  
  4537.                                             -> Lawrence <-
  4538. --- QuickBBS v2.03
  4539.  * Origin: Torrance BBS * Los Angeles, CA * (213) 370-9027 * (1:102/345)
  4540.  
  4541. *** This is a reply to #63.
  4542.  
  4543.  
  4544. From:    Aaron Shumate 
  4545. To:      Djoerd De.fost                           Msg #229, 15-Jan-89 03:54pm
  4546. Subject: CLRSCR IN TP 4.0
  4547.  
  4548. Well Djoerd, I think your problem is that you don't have the USES CRT; line in
  4549. your program.  This includes the CRT unit, which in turn lets you use the
  4550. functions in that unit, and CLRSCR happens to be one of them.  Read the
  4551. section in your manual on units to get further instructions on how to use
  4552. them.
  4553.  
  4554. Hope this helps...
  4555.  
  4556.  Aaron
  4557. --- TBBS v2.0
  4558.  * Origin: The Coop - Striving for Exellence (501)273-9257  (7101/6)
  4559.  
  4560.  
  4561. From:    Ray Sun 
  4562. To:      Jesper Wolf                              Msg #230, 16-Jan-88 08:24pm
  4563. Subject: Re: Turb 3.0 shell
  4564.  
  4565.  
  4566. Just telling you both...
  4567.  
  4568. There is that file that someone was talking about that was written by
  4569. someone at Borland floating around somewhere...I have it myself...It works
  4570. perfectly and isn't complicated at all (just set the Maximum/Mimimum memory
  4571. thingys to 100H--Or is it 100)
  4572.  
  4573. Just get that for a simple answer!
  4574.  
  4575. Of course, I can't remember what it's called..And also, I viewed it and
  4576. captured it instead of d/l it to save a d/l so I don't have the real file
  4577. anyway!
  4578. --- QuickBBS v2.03
  4579.  * Origin: ** The Express Line, Winterville, GA (404) 742-7736 HST **
  4580. (1:370/22)
  4581.  
  4582.  
  4583. From:    Richard Louie 
  4584. To:      All                                      Msg #231, 15-Jan-89 10:28am
  4585. Subject: TP5.0
  4586.  
  4587.    For anybody with any doubts in upgrading to TP5.0, you should forget about
  4588. them! TP5.0 is a great program ( I am sure many of you would agree).  With the
  4589. integrated debugger, it makes programing as easy as counting from 1 to 3.  For
  4590. any serious pascal programmer, TP5.0 is the best thing that could happen at a
  4591. reasonable price!!
  4592.   
  4593. Richard
  4594.  
  4595.  
  4596. ---
  4597.  * Origin: 1ST SOURCE "ECHOFILE-HUB" Vancouver (Opus 1:153/301)
  4598.  
  4599.  
  4600. From:    Lee Hamel 
  4601. To:      All                                      Msg #232, 16-Jan-88 05:06pm
  4602. Subject: Turbo 3.0
  4603.  
  4604. Sorry to all if I sounded like an ass, but I wasn't feeling great.
  4605.  
  4606. Anyway, I figured out how to do the par                  Msg #236, 16-Jan-89 distribute compily book (for all the interrupts),
  4607. the TP 3.0 book, and a Pascal library type book.. pretty simple
  4608. for interrupts. I still don't know how to do the shell to DOS.
  4609. I know you have to execute command.com, but don't know how (or can't
  4610. seem to get it right.) Any help appreciated.
  4611. --- QuickBBS v2.03
  4612.  * Origin: Uptown Underground - City Life - Portland, OR (1:105/15)
  4613.  
  4614.  
  4615. From:    Ross Wentworth 
  4616. To:      Murray Eisenberg                         Msg #233, 17-Jan-89 01:33am
  4617. Subject: Turbo Pascal 5.0 with NEC V30/8087
  4618.  
  4619.  >    The following code causes the machine to hang and
  4620.  > requires a reboot:
  4621.  >
  4622.  > var
  4623.  >   x, y : double;
  4624.  >
  4625.  > begin
  4626.  >   x := 1.0 / 2.0;
  4627.  >   repeat
  4628.  >     y := x;
  4629.  >     x := y*y
  4630.  >   until false
  4631.  > end.
  4632.  
  4633. You don't have anything to terminate the loop!  It will run forever.  If you
  4634. single step it using the integrated debugger you'll see what I mean.
  4635.  
  4636.                                     Ross Wentworth
  4637.  
  4638. --- FD 2.00
  4639.  * Origin: Serendipity Software via Torrance BBS (213)370-9027 (1:102/345.1)
  4640.  
  4641. *** This is a reply to #78.
  4642.  
  4643.  
  4644. From:    Randall Smith 
  4645. To:      Bertrand Renuart                         Msg #234, 16-Jan-89 09:14am
  4646. Subject: Re: PASCAL - DOS
  4647.  
  4648.  BR> How can I use Dos function, like read/write files, in my RESIDENT
  4649.  BR> Turbo PAscal Program ? It's a big problem because DOS is not recursive
  4650.  BR> (In french : DOS n'est pas rcursif ou rentrant ...)
  4651.  
  4652.   Bertrand;  My best suggestion is to look for a book on TSR's in pascal.  Get
  4653. the publisher's name and ISBN number.  Contact the publisher and ask if he has
  4654. a French language edition.  Your English is *MUCH* better than my French!   
  4655.   TSR's use undocumented DOS functions and switches.  You can use DOS
  4656. functions 01h to 12h.  There is also a switch called DOS-busy used as a flag
  4657. to determine when a TSR can pop-up.  I don't know the location of this flag. 
  4658. Many TSR's use a two step process to activate.  They hook into the keyboard
  4659. interrupt and the timer interrupt.  When triggered by the keyboard, the TSR
  4660. only sets a TSR-flag.  The Main portion of the TSR connected to the timer
  4661. interrupt checks the TSR-flag and the DOS-busy flag at every timer tick (18.2
  4662. times per second).  When the TSR-flag is set and the DOS-busy flag is not set,
  4663. the TSR activates and can then use *ANY* DOS function.
  4664.   Look for a file called TESS*.* for pascal which has a full set of support
  4665. routines for TP programs.  It is available on Compu$erve and many BBS's.     
  4666.   Good Luck.  My cat wants some attention so I must go.
  4667.  
  4668.  
  4669.  
  4670. Later....             Randy.
  4671.  
  4672. --- Msg V3.2
  4673.  * Origin: The Knot in the End of the Thread.    (1:150/511.10)
  4674.  
  4675. *** Part of a conversation.
  4676.  
  4677.  
  4678. From:    Randall Smith 
  4679. To:      Holger Schurig                           Msg #235, 16-Jan-89 09:46am
  4680. Subject: Patches for TP5? uints
  4681.  
  4682.  HS> not use meaningful filenames for the programs ?  By the way: every
  4683.  HS> unit from me ends with ".U", i have patched TURBO.EXE so make or build
  4684.  HS> will consider this. It makes things clearer on your directories.
  4685.  
  4686. I think this is a good idea.  Do you have the patches to do this handy?  Could
  4687. you post them for all to see or netmail me a list of the patches?  Thanks in
  4688. advance..      
  4689.  
  4690.  
  4691. Later....             Randy.
  4692.  
  4693. --- Msg V3.2
  4694.  * Origin: The Knot in the End of the Thread.    (1:150/511.10)
  4695.  
  4696.  
  4697. From:    Randall Smith 
  4698. To:      Gary Godfrey                             Msg #236, 16-Jan-89 distribute
  4699. and I got no messages on printer 3..........ut:
  4700. e[K
  4701. L[K--- Msg V3.2
  4702.  * Origin: The Knot in the End of the Thread.    (1:150/511.10)
  4703.  
  4704. *** Part of a conversation.
  4705.  
  4706.  
  4707. From:    Randall Smith 
  4708. To:      Olof Vanderzwan                          Msg #237, 16-Jan-89 10:01am
  4709. Subject: Integer-String conv
  4710.  
  4711.  OV> How can I convert integers to string
  4712.  OV> As example I have hours min sec as integers but I like to carry on
  4713.  OV> with a time string.
  4714.  
  4715. Oleg; I'll keep this short.  Var
  4716.     hours, min, sec : integer;
  4717.     hours_S, min_S, sec_S : string[2];
  4718.     time : string[8];
  4719.     i : integer; begin
  4720.     Str (hours:2, hours_S);                         { convert } 
  4721.     Str (min:2, min_S);                             { hours, min, sec }
  4722.     Str (sec:2, sec_S);                             { to string format }
  4723.     time := hours_S + ':' + min_S + ':' + sec_S;    { time w/: }
  4724.  
  4725.     for i := 1 to 8 do                              { remove blanks }
  4726.         if time[i] = #32 then                       { from string }
  4727.             time[i] := '0';                         { replace with '0' } end;
  4728.  
  4729.  
  4730. Hope this helps..
  4731.  
  4732.  
  4733. Later....             Randy.
  4734.  
  4735. --- Msg V3.2
  4736.  * Origin: The Knot in the End of the Thread.    (1:150/511.10)
  4737.  
  4738.  
  4739. From:    Randall Smith 
  4740. To:      Loyd Craft                               Msg #238, 16-Jan-89 10:19am
  4741. Subject: Re: STYLE DEBATE #9,005
  4742.  
  4743.  LC> I realise that with My way you end 
  4744.  LC> up with bigger source files, because of all the indenting 
  4745.  LC> with spaces,
  4746.  
  4747. If you're concerned by the bigger source files, use TINST to fill the blank
  4748. areas with TABS instead of spaces.  This has the added advantage that if you
  4749. want to change the indent everything moves together.
  4750.  
  4751.  
  4752.  
  4753. Later....             Randy.
  4754.  
  4755. --- Msg V3.2
  4756.  * Origin: The Knot in the End of the Thread.    (1:150/511.10)
  4757.  
  4758. *** This is a reply to #216.
  4759.  
  4760.  
  4761. From:    Hal Smith 
  4762. To:      Charles Falconer                         Msg #239, 17-Jan-89 08:05pm
  4763. Subject: Re: TP System interface
  4764.  
  4765. Charles,
  4766.   Tinfo is one of the diagnostic / support routines supplied by TurboPower
  4767. Software with their Turbo Analyst package.  The program can reconstruct the
  4768. interface, both variables and routines, and give the calls with parameters in
  4769. the implementation section.
  4770.   If you were a clever person, with lots of time to burn, and a good
  4771. understanding of generated code, you might be able to use the other option
  4772. (detailed assembler type code) to reverse compile the unit.
  4773.   Of course, reverse compilation is one of the great undoables in computer
  4774. science.  The TPU, by its very nature, I would guestimate is at least an order
  4775. of magnitute easier to do than a straight exe or com file.
  4776.   Turbo Analyst is about $75.00 from the developer direct, or you can get it
  4777. for the usual discounts from folks like the Programmer's Connection, or the
  4778. Programmer's Shop, or Programmer's Paradise, etc.  A *very* worthwhile tool
  4779. for the serious TP developer.
  4780. -H
  4781. --- QuickBBS v2.03
  4782.  * Origin: Transient Technologies *PASCAL* Programming echo <HST> (1:280/302)
  4783.  
  4784. *** This is a reply to #51.
  4785.  
  4786.  
  4787. From:    Hal Smith 
  4788. To:      Randall Smith                            Msg #240, 17-Jan-89 08:18pm
  4789. Subject: Re: Print routine
  4790.  
  4791. Randall,
  4792.   The other thing that bit me was the fact that while TP3 initalized variables
  4793. to 0 (thereby giving me printer 0 in the call) the newer two versions don't,
  4794. and I got no messages on printer 3..........ut: Re: A Little Problem
  4795.  
  4796.  -SP>  AL> That's why God created the smiley face. :-)
  4797.  -SP> 
  4798.  -SP> :-) Doesn't look like a smiley face to me... Where did it originate 
  4799.  -SP> from?
  4800. Turn your Monitor on it's right side and then look again
  4801.  
  4802.  
  4803. --- msged 1.96S ZTC
  4804.  * Origin: Ministry of Truth  (1:10/700.1)
  4805.  
  4806. *** This is a reply to #214.
  4807.  
  4808.  
  4809. From:    Brion Lienhart 
  4810. To:      Greg Franklin                            Msg #248, 16-Jan-89 12:22pm
  4811. Subject: A Computer Term
  4812.  
  4813.  -GF> What does the prefix "foo" as in "foobar" really stand for?  I know
  4814.  -GF> that it's merely a dummy name, but what's the story behind it?
  4815. actually it's an acronym and should be FUBAR which stands for F***ed Up Beyond
  4816. All Recognition. Then there is always:
  4817. SNAFU- Situation Normal, All F***ed Up
  4818. JANFU- Joint Army Navy F*** Up 
  4819.  
  4820. I'm not sure where foo came from, I think it was in K&R.
  4821. --- msged 1.96S ZTC
  4822.  * Origin: Ministry of Truth  (1:10/700.1)
  4823.  
  4824. *** This is a reply to #241.
  4825.  
  4826.  
  4827. From:    Dave Goggin 
  4828. To:      Randall Smith                            Msg #249, 16-Jan-89 04:52pm
  4829. Subject: Re: TYPING PASCAL
  4830.  
  4831. sounds good.
  4832. --- TBBS v2.0
  4833.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  4834.  
  4835. *** This is a reply to #7.
  4836.  
  4837.  
  4838. From:    Dave Goggin 
  4839. To:      Detlef Kloeser                           Msg #250, 16-Jan-89 04:54pm
  4840. Subject: Re: TURBO PASCAL 5.0
  4841.  
  4842.    I think I know of a very good book about TP 5.0, it is called 'Turbo Pascal
  4843. Programmers handbook' or something like that, and it is mainly about TP 3.0,
  4844. but it has an addemdum about TP5.0.
  4845. --- TBBS v2.0
  4846.  * Origin: G.A.D.M. Multi-User TBBS Hayward,CA.(415) 581-3019  (161/208)
  4847.  
  4848. *** This is a reply to #137.
  4849.  
  4850.  
  4851. From:    Jon Guthrie 
  4852. To:      Jim Segler                               Msg #251, 17-Jan-89 10:37am
  4853. Subject: Re: Philosophy
  4854.  
  4855.  JS> I want to know how you learn to drive ? you can't drive a car or 
  4856.  JS> truck with a  book you just learn the rules driveing is done best 
  4857.  JS> with hands on.......
  4858.  
  4859. But a significant part of the art of programming is planning.  Learning
  4860. to plan a program is, to my knowledge, NEVER taught in intro programming
  4861. courses and doesn't require hands-on experience.  (You could teach an
  4862. entire course just on the techniques for planning a program.)
  4863.  
  4864. --- Via OpXpress V1.06ß "Silver"  SCIGUY -  The Scourge of Delphi!
  4865.  * Origin: FOG-LINE;FOG#51;USR HST;515-964-7937 (1:14/627)
  4866.  
  4867. *** This is a reply to #226.
  4868.  
  4869.  
  4870. [251] Highest: 251
  4871. ECHO area 45 ... Pascal language echo
  4872. Type `?' by itself for help
  4873. A)rea change       N)ext (read msg)   P)rior msg         E)nter message
  4874. R)eply             =)read non-stop    -)read original    +)read reply
  4875. L)ist (brief)      I)nquire           M)AIN MENU         G)oodbye (logoff)
  4876. K)ill message