HDTenEightyP/NetNews huggingface dataset:
From: delusion@casbah.acns.nwu.edu (Albert Schmezer)
Subject: Turbo Pascal V6.0 BUG?! Fixed?
Organization: Northwestern University, Evanston Illinois.
Date: Thu, 17 Dec 1992 00:46:58 GMT

	Hello all. I seem to have uncovered some bugs in Turbo Pascal V6.0
that I hope some people could shed some light on. Are these internal bugs? Can
they be fixed? Are they fixed in TP 7.0 or BP 7.0?

	1.) Try the following simple program. It seems to me that you can use
longints and integers together for multiplication. Why?!

var 	i: integer;
	l: longint;

begin
	i:=400; l:=i*104;
end.

	It will return a NEGATIVE number! Switch the i variable to a longint,
and it will work fine! Why?! The longint should be able to handle this
multiplication. It MUST be a bug with cross variable type multiplication. Of
course, l:=400*104 works perfectly. But I would like to be able to multiply
integers and longints together..

	2.) ALL the Turbo products (Turbo Pascal V5.0, 6.0, Turbo C, and Turbo
C++ V2.0) refuse to work with my EMS driver (ACCEMM.SYS). They lock up
immediately upon bootup. WHY?! Hmmmm!

	I appreciate any help possible! Have a merry Christmas or Channukah or
any other holiday, and a great day!
<<delusion


Newsgroups: comp.lang.pascal
From: francois@welchgate.welch.jhu.edu (Francois Schiettecatte)
Subject: BP 7.0
Organization: Johns Hopkins Univ. Welch Medical Library
Date: Tue, 15 Dec 1992 13:26:15 GMT

I have a couple of questions about BP 7.0, I understand that 
it will compile programs so that they can run in protected
mode ( thus accessing memory above the 1Mb line ). If this 
is the case, then do they do away with the 64K segment limit,
I need to be able to extend my data segment beyond the 64K limit
and I dont want to do a lot of rewritting of code. Currently
I use TP 6.0 and I am limited to 64K segments, but I can only
run in real mode.


Any help/advice would be appreciated, thanks


francois


 
Newsgroups: comp.lang.pascal
From: amead@s.psych.uiuc.edu (Alan Mead)
Subject: Re: High speed clock
Organization: UIUC Department of Psychology
Date: Fri, 11 Dec 1992 22:04:30 GMT
Keywords: clock

>In article <1992Nov20.091212.24871@lth.se> d92bo@efd.lth.se (Bengt Oehman) writes:
>From: d92bo@efd.lth.se (Bengt Oehman)
>Subject: High speed clock
>Keywords: clock
>Date: 20 Nov 92 09:12:12 GMT


>Does anyone out there know how to do high-speed timing?
>The internal clock ticks with 18.2 ticks per second, and
>sometimes this is too slow. I want a resolution of about
>one millisecond.

>Please reply via email.

I'll reply via email too...

First, a solution:  there is a self-extracting zip file, TIMER.EXE,
that can be had by anon-ftp from my host, s.psych.uiuc.edu (in /pub I
think) that incudes a driver that will do this.

Now, can anyone EXPLAIN how this is done?  I have always wanted to
know--it's really not the best situation to have very OS-specific code
that you cannot understand and thus maintain.  And, unfortunately, the
standard in psych is to time events to the millisecond.

Thanks much.

-alan
From: johannes.beekhuizen@contrast.wlink.nl (Johannes Beekhuizen)
Newsgroups: comp.lang.pascal
Subject: Stopping Control-C...  I though I was...
Date: Mon, 14 Dec 1992 16:27:28

Hello Don,

On Sunday December 13 1992, Don Bontemps wrote to All:

 DB> I wrote an application program that I did not want the user to be able
 DB> to exit via pressing <control-C>.  I included the "setcbreak := true"
 DB> line to my source code.  This stops <control-C> but does not stop
 DB> <control-break> (ie: the break on the pause key).  Can someone tell me
 DB> how to prevent <control-break> from doing this?   Thanks.....!

In my manual (Library Reference) it says:
        SetCBreak sets the state of Ctrl-Break checking in Dos. When off
(false), Dos only checks for Ctrl-Break during I/O to console, printer or
communications devices. When on (true), checks are made at every system call.

Now, if you look in the Programmer's Guide, it says for CheckBreak:
        var CheckBreak : Boolean;
        When CheckBreak is True, pressing Ctrl-Break aborts the program when
it next writes to the display. When CheckBreak is False, pressing Ctrl-Break
has no effect.

It's also clearly explained in the online help.

Regards,

           Hans.

fidonet  2:281/527.5
yan-net  123:3183/0
e-mail   johannes.beekhuizen@contrast.wlink.nl

Newsgroups: comp.lang.pascal
From: mcrocker@titan.ucc.umass.edu (MATTHEW S CROCKER)
Subject: TurboVision & COM routines
Organization: University of Massachusetts, Amherst
Date: Tue, 15 Dec 1992 19:08:50 GMT


Ok,  I know this has been asked before.. so NO flames.

I'm using TP 6.0 and will be getting BP7.0 soon.  I'm looking for some
good TurboVision Com port routines.  I'm going to need to run upto 4
COM ports at 9600 BPS (1 modem, 2 data,1 FAX).. I'll be using a 486 machine
I am considering writing this in C++ but I know Pascal better

Anyway,  Are there any good TV com routines outthere? which use
tApplication.Idle or somesuch thing.  I would prefer something shareware 
but will consider Comercial programs.

Thanks in Advance.

PLEASE RESPOND VIA E-MAIL!!!!!!!

-Matthew Crocker

- The mask given time will become the face itself.

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- Matthew Crocker
s1949782@titan.ucc.umass.edu <-  Til 1/1/93
mcrocker@titan.ucc.umass.edu <-  Til I Graduate  LOOOOOOOONNG TIME
From: daves@vtucs.cc.vt.edu (Dave Sisson)
Newsgroups: comp.lang.pascal
Subject: TurboVision and CUA (was Re: Turbo Vision Keys?)
Date: 13 Dec 92 17:49:50 GMT
Organization: Virginia Tech, Blacksburg, VA

In article <724065276.AA00687@contrast.wlink.nl> berend@contrast.wlink.nl (Berend de Boer) writes:
>Not so difficult, but you do, in this way, not conform to the CUA
>standard which is a serious drawback I think. More and more people are
>using CUA compliant UIs. But let's show the code:

 ...

>1) Do not use the bfDefault flag
>2) Override the HandleEvent of your dialog.


    True, my code does not use the bfDefault flag.  But when considering
compliancy to the CUA standard - who wants to use a standard which is
complicated to use?  My extended dialog class makes the first button
act as if it were the default by being the first button in the TAB order
that the user would reach by continually pressing the ENTER key.  (BTW,
I plan to post my code to the TurboVision mailing list late Monday morning
so subscribe soon!)

    I agree that the arrow keys should not be overridden
especially if you want to use histories at all in your code, but the
changing of the ENTER key is extremely logical.  When I have a menu box
with several input lines in it (see below for a drawing), users get confused
when they have to use some special key like TAB to move between lines.  More
often than not a user will end up with just the first entry filled in and
the rest just blank.  

--
     Dave Sisson                          Join the TurboVision mailing list!

     Send a message with the body    -->    SUBSCRIBE TURBVIS My Name
     to listserv@vtvm1.cc.vt.edu today!
Newsgroups: comp.lang.pascal
From: SKLEPZI@SSB1.SAFF.UTAH.EDU (Steven Klepzig)
Subject: Re: Novell Queues
Organization: University of Utah
Date: Wed, 16 Dec 92 23:22:10 GMT

In article <1go89uINNim6@uwm.edu> alanchem@csd4.csd.uwm.edu (Alan Scott Olson) writes:
>
>With BP 7.0, how difficult is it to direct output to a Novell queue, on a 
>dedicated print server.

It's not that bad, realizing that there is no direct relationship between 
Netware queue's and print servers.  Directing output to a queue is 
independent from the type of queue and type of server involved.

There are a couple of netware calls that create print jobs.  Are you 
referring to CAPTURE type of redirection or direct creation and use of a 
queue file?  There is a difference.

I've just finished writing my own routines for doing both of these, mainly 
for practice in OOP programming and because I need them.  They are virtually 
untested so far and I wouldn't even classify them as beta code.  However, 
many other people (I think) have written similar routines.  Also, TurboPower 
Software has code to do this stuff in the new version of OPRO (v1.20).

Steven (sklepzi@ssb1.saff.utah.edu)
From: st1fx@rosie.uh.edu (Perplexed Prophet)
Newsgroups: comp.lang.pascal
Subject: Linked Lists
Date: 11 Dec 1992 15:19 CST
Organization: University of Houston
Distribution: world
NNTP-Posting-Host: rosie.uh.edu
News-Software: VAX/VMS VNEWS 1.41    

I am beginning programmer trying to learn Linked List at this moment.  I
currently use TP 7.0.  

I am trying to create a program simulating a Lottery drawing.  (Meaning
I am going to have Random numbers).  In this drawing, Six numbers will be
drawn. (I know an array is sufficient for this, but again I am practicing
dynamic structures).  Anyhow,  when I step through the program everything
works fine (Meaning I have six different numbers as output).  However,
when I run the program I get one number printed six different times.

Thank You.

P.P.
Newsgroups: comp.lang.pascal
From: daven@vx.cis.umn.edu (David Nieters)
Subject: How do I obtain a Language Referance Manual?
News-Software: VAX/VMS VNEWS 1.41    
Keywords:  manual
Organization: University of Minnesota CIS
Distribution: usa
Date: Mon, 14 Dec 1992 20:14:00 GMT

Where can I find the Language Reference Manual for Pascal?  The one that
would be of interest to a compiler writer.  I'm sure IEEE, ANSI, ISO or
whomever must have the specs published somewhere.  I haven't seen it in
any bookstores.

David Nieters
University of Minnesota
daven@vx.acs.umn.edu
From: amead@s.psych.uiuc.edu (Alan Mead)
Subject: Re: Creating a TSR
Organization: UIUC Department of Psychology
Date: Wed, 16 Dec 1992 18:43:32 GMT

Hendrik.Klompmaker@beheer.zod.wau.nl (Hendrik Klompmaker) writes:

>In article <ByyHw1.2vx@pcuf.fi> hammer@pcuf.fi (Mikko Uromo) writes:
>>From: hammer@pcuf.fi (Mikko Uromo)
>>Subject: Creating a TSR
>>Date: Tue, 8 Dec 1992 19:52:49 GMT
>>[Mikko is trying to write a TSR]

>I tried some of the PD stuff around to make a TSR but find that nothing 
>beats the Turbo Power Object professional library. I only use parts of it 
>but it's sure worth the money.

Yes.  The absolute easiest way is to use the Turbo Power unit.  It is
shareware but I'm not sure that they keep releaseing new versions (at
least to Internet).  I emailed the authors for my v5.5 TPU.

But I became disenchanted with a Pascal TSR because ASM is sooo much
more efficient and I found a neat (PD last I heard) package, TBONES
that makes it relatively easy to write a TSR (ie, *if* you know ASM).
TBONES should be available from large FTP sites.

If you are really interested in HOW to write a TSR (as opposed to just
getting the job done), then I have a few bits of code.  The problem
(which I'll only sketch) is rather more complex than you seemed to
think.  DOS and some of the BIOS is NON-REENTRANT, meaning that if you
call, a function twice (once by some application and the second time by
you TSR that "pops-up" over the first app) the second call overwrites
information neccessary for the first call to return.  Thus after your
TSR reliquishes control, execution resumes at some random point in
memory and chaos ensues.

The trick (art?) of figureing out when it is "safe" to pop-up is the
hard part.

Note that if you never want to call an interrupt, it is almost
trivially easy to write a TSR.  Just remember to shrink your heap (with
$M directive) and terminate with Keep() rather than Halt() or "END.".
For instance, I have a neat little TSR clock that uses Mem[:] to (1)
read the time and (2) poke the nessessary string directly into video
ram.  Thus this TSR side-steps the whole nasty issue of when it is safe
to issue a interrupt by not doing so.

-alan
From: ATURNER@rcnvms.rcn.mass.edu (Alan Turner)
Newsgroups: comp.lang.pascal
Subject: wanted: back issues of info-pascal
Date: 18 Dec 92 18:00:36 GMT

Date sent: 18-DEC-1992 

 I need about 10 megs of raw data and am looking for info-pascal archives.
 Do they exist? ...and if so could someone please direct me to where I can
 find them.
 


-=Alan Turner=-                
-=Email: aturner@ecn.mass.edu=-
From: adams@vms.ocom.okstate.edu
Newsgroups: comp.lang.pascal
Subject: Re: help with die rolls...
Date: 16 Dec 92 16:03:36 GMT
Article-I.D.: vms.1992Dec16.100336.1
Organization: OSU College of Osteopathic Medicine

In article <1992Dec16.170959.3637@csdvax.csd.unsw.edu.au>, p2112899@csdvax.csd.unsw.edu.au writes:
> Could someone please show me how to get random die rolls going.
> 
> I am writing an attribute program for a roll playing game and need to roll die
> for it.
> 
> The code I have done is:
> 
> for i := 0 to 3 do  pe := pe + random(6);
>
> to roll a 6 sided die 3 times, but it doesn't work as it should. Some values
> produced are actually lower than possible.
> 
> The minimum roll from 3 six sided die is 3, sometimes I get 2???
> 
> Any help will be appreciated.
> 
> Richard.
> P2112899@csdvax.csd.unsw.edu.au


All the RANDOM functions which accept arguments return values from ZERO to N-1,
inclusive, where N is the argument supplied (in this case, 6).  If you want a
number from 1 to 6, then use the following:

for i := 0 to 3 do  pe := pe + ( random(6) + 1 );

(parenthesis added for emphasis, not necessary.)

If the random function you are using does return the value of 6, then use this
instead:

for i := 0 to 3 do  pe := pe + ( random(5) + 1 );


I have had this same problem myself a few times before I figured it out :)

Steven Adams (INTERNET:  adams@vms.ocom.okstate.edu)
Newsgroups: comp.lang.pascal
From: ATURNER@rcnvms.rcn.mass.edu (Alan Turner)
Newsgroups: comp.lang.pascal
Subject: still wanted: info-pascal archives
Date: 19 Dec 92 13:48:08 GMT

Date sent: 19-DEC-1992 



Are the info-pascal mail msgs stored in any archives?
I need to write a major data retrieval program and so I want to write a
mail-reader which will process info-pascal mail. 

I need to be working with 10,000+ records to fully utilize the structures I
plan to incorporate so...  I figure 10 megs of archives will give me enough
data.

I could download all the RFC files I can find but I want info-pascal files.
I have searched garbo but could not find.



-=Alan Turner=-                
-=Email: aturner@ecn.mass.edu=-
From: granoff@keptin.enet.dec.com (Mark H. Granoff)
Newsgroups: comp.lang.pascal
Subject: Re: OPRO & TP 6.0
Date: 16 Dec 92 15:28:36 GMT
Reply-To: granoff@ranger.enet.dec.com
Organization: Digital Equipment Corporation, Littleton, MA


In article <SKLEPZI.11.0@SSB1.SAFF.UTAH.EDU>, SKLEPZI@SSB1.SAFF.UTAH.EDU (Steven Klepzig) writes:
>Just (finally) got time to start adding the OPRO, TPRO, & BTREE Filer stuff 
>to my TP 6.0.  Yes, I know that I'm way behind.  No, I don't have BP 7.0 (
>yet).

I'm not quite sure what you mean...  If you just *bought* it, then you should
have a compatible version.  If you bought it a while ago (like before TP6 was
released), then perhaps you don't have the most current version.

The last major version of Opro that I upgraded to was V1.1, but since then,
several changes and fixes have been made, and the current version is something
like V1.14.

There are some changes necessary for BP7 as well, which you can make yourself,
or you can upgrade to Opro V1.2 (I think) which includes everything (I'd
guess).

>Does anyone have the compuserv address for 
>TurboPower software handy?  Or is there a list of "fixes" somewhere out 
>there?

I don't have their CIS address handy, but you can reach them at (800) 333-4160,
their sales line.

[I have no affiliation with TurboPower Software, other than as a satisfied
customer (for non-business purposes)].

--
Mark H. Granoff | Personal Computing Systems Network S/W Development Group  
---------------------------------------------------------------------------
Digital Equipment Corporation | Internet: granoff@keptin.enet.dec.com
30 Porter Road, LJO2/I4       | Usenet  : ...!decwrl!keptin.enet!granoff
Littleton, MA 01460           | AT&T    : +1 508 486 2090
---------------------------------------------------------------------------
Opinions herein are my own and do not necessarily reflect those of Digital.

Newsgroups: comp.lang.pascal
From: peter.reichelt@gmd.de
Subject: Re: Week numbers
Organization: GMD, Sankt Augustin, Germany
Date: Tue, 15 Dec 1992 14:42:06 GMT

leonard@qiclab.scn.rain.com (Leonard Erickson) writes:

>sbakker@cs.vu.nl (Bakker S) writes:

>>Can anyone tell me how to number weeks, i.e. does Jan. 1 fall into week #1 or
>>week #52? For example, in 1992 Jan. 1 fell into week #1, but in 1993 it will
>>fall into week #52 of '92.

>>Am I right in assuming that it's week #1 if Jan. 1 is either Monday, Tuesday,
>>or Wednesday, and #52 otherwise?

[ ... ]

>As I say, there's no standard. 

In Germany there is a standard for counting the weeks.
It's called DIN 1355.

The first week of the year is that one, which contains at least 4 of the
7 first days in January.

Equivalent: The first week of the year is that one, which contains the
first Thursday of the year.

Examples: 30th of December 1991 is in the 1st  week of 1992;
          2nd  of January  1993 is in the 53th week of 1992.

Peculiar perhaps, but logical.

Peter.
--
------------------------------------------------------------------------
Peter Reichelt, Gesellschaft fuer Mathematik und Datenverarbeitung (GMD)
Rathausallee 10 / Postfach 1316        Telefon 02241-14-3291 (Fax -3006)
5205 Sankt Augustin                    E-mail  peter.reichelt@gmd.de
From: vanney.raphael@lill.frmug.fr.mugnet.org (Vanney Raphael)
Newsgroups: comp.lang.pascal
Subject: GRAPHIC MOUSE CURSOR IN T
Date: 18 Dec 92 01:29:00 GMT
Reply-To: vanney.raphael@lill.frmug.fr.mugnet.org (Vanney Raphael)
Organization: Li'LL BBS - Paris, France

MC}From: currin@unpsun1.cc.unp.ac.za (Michael Currin)
MC}Newsgroups: comp.lang.pascal
MC}Subject: Graphic Mouse cursor in TP6
MC}Keywords: mouse,cursor,pascal
MC}Date: 2 Dec 92 09:16:27 GMT
MC}Organization: Univeristy of Natal, Pietermaritzburg, RSA

MC}Hello all pascal enthusiasts,

MC}I am currently using Borlands Turbo Pascal v6.0 and have been writing
a text
MC}based application that uses the mouse as the primary input device.

MC}I have recently seen the emergence of a few programs ( Norton
Utilities /
MC}Desktop for DOS, PCTools v7.x, CompuShow v8.50a and other ) that use
an arrow
MC}or some other mouse cursor on VGA systems.  Does anyone have any idea
on how
MC}to do this ?  I have thought of redefining a character in the VGA
character
MC}set and then setting this as the mouse cursor but this would still
only make
MC}the mouse cursor move in jumps of one character at a time ( unlike
the afore
MC}mentioned programs, and not very smooth !! ).  Maybe the routine
would have
MC}to be written in assembly to get it fast enough ?

MC}I would appreciate it if anyone can offer any help / source code /
references
MC}in this regard.

MC}Many thanks
MC}Michael
MC}  - currin@unpsun1.cc.unp.ac.za


MC}--- GEcho 1.00
MC} * Origin: Li'LL BBS - Paris France - (33-1) 43.07.40.97 (2:320/7)

Hello !

I extremely highly suspect this is, say, easily, done by dynamically
(i.e.
whenever you move the mouse) redefining the character set :
When showing the mouse, replace the (up to) four characters (partially)
covered by the mouse cursor by, say     #255 #254
                                        #253 #252
then redefine the characters #252 to #255 to display... those characters
that where under the mouse... PLUS a mouse cursor !
That of course implies that you've got no other #252..#255 characters on
the screen (try #0..#3).
If you have never seen one thousand of mouse cursors moving
simultaneously
on your screen, just try to edit a binary file with PC-Tools 7....!!!

Actually, I have not tried to that myself, but will sure come to it
somday...

                                                  Raphael.
 * OLX 2.1 TD * Please, user, stop expanding your phone bill with tag
lin
--- FMail 0.92
 * Origin: ICEBERG - La Garenne * FRANCE * Tel:(33)-1-47699261 (2:320/1)
                    
Newsgroups: comp.lang.pascal
From: sbakker@cs.vu.nl (Bakker S)
Subject: Week numbers
Organization: Fac. Wiskunde & Informatica, VU, Amsterdam
Date: Fri, 11 Dec 1992 14:38:15 GMT

Can anyone tell me how to number weeks, i.e. does Jan. 1 fall into week #1 or
week #52? For example, in 1992 Jan. 1 fell into week #1, but in 1993 it will
fall into week #52 of '92.

Am I right in assuming that it's week #1 if Jan. 1 is either Monday, Tuesday,
or Wednesday, and #52 otherwise?

Help!

				Steven Bakker (sbakker@cs.vu.nl).


Newsgroups: comp.lang.pascal
From: litt3509@mach1.wlu.ca (Carl Litt u)
Subject: Alarm interrupt programming in TP6 -- Please read
Organization: Wilfrid Laurier University
Date: Fri, 11 Dec 1992 19:45:46 GMT

One little peice of info that I picked up while flipping through one of
my MSDOS programming reference manuals, is that the IBM has a software
interrupt for a built-in alarm.  Basically, the way it works is that
the system clock interrupt 1A (hex) has a service that allows you to
program the alarm to activate interrupt 4A (hex) at a given time.  The
So what you do is make a user interrupt procedure and link it to Int 4A,
and when the alarm goes off, your procedure will run.  I suspect this is
the way some viruses work.  Anyways, I'm trying to write a program to make
use of this 'alarm', but it doesn't seem to work.  Here's what I've got:

program TestAlarm;
uses dos;
var regs : registers;
    tempptr : pointer;

procedure AlarmProc; interrupt;
begin {AlarmProc}
    writeln('The alarm has sounded');
end; {AlarmProc}

procedure {main}
    checkbreak:=false;
    setintvec($4A,@AlarmProc);
    with regs do begin
        ah:=6;     {the service that sets the alarm}
        cl:=0;     {0 hours}
        ch:=0;     {0 minutes}
        dl:=30;    {30 seconds}
    end;
    intr($1A,regs);
    write('Waiting for the alarm to go off...press any key to exit');
    repeat until keypressed;
    checkbreak:=true;
end. {main}

What I expect to program to do is write a message to the screen, and wait.
After 30 seconds, the 'alarm' goes off, and my AlarmProc interrupt gets
called.  But, in my tests, the alarm never goes off.  I have 2 sources
of information on the alarm, and one says the alarm goes off after the
given amount of time has elapsed.  The other says the alarm goes off
when the real-time clock reaches the given time.  I've tried it both
ways, and it doesn't work.  Has anyone been playing around with this
alarm, and if you got it to work, how did you do it?

BTW: Right now my only concern is getting the alarm to go off.  I don't
care what the program does after the alarm goes off.

litt3509@mach1.wlu.ca
From: ATURNER@rcnvms.rcn.mass.edu (Alan Turner)
Newsgroups: comp.lang.pascal
Subject: my PD editor fights back / TP prot scheme
Date: 14 Dec 92 13:32:11 GMT

Date sent: 14-DEC-1992 



I have my favorite PD editor which I use for small - quick little progs.
I decided that I would go in with Dos debug and just change the color attr
byte - so I can see my screen better - guess what?
The program knew that I modified one byte! and gave me an error message
accordingly! "Program has been altered" and blew up!

This is my question because now I am curious - does anyone know of TP prot
schemes along these lines or is this a strictly assembly thing?
How can a program do this!!!????



 



-=Alan Turner=-                
-=Email: aturner@ecn.mass.edu=-