HDTenEightyP/NetNews huggingface dataset:
From: friesenda@skyfox.usask.ca
Subject: RE: LASTDRIVE function/asm/ect... Need one!
Organization: University of Saskatchewan
Date: Thu, 12 Nov 1992 16:56:08 GMT

In a previous article, jdz1@Ra.MsState.Edu (John D. Zitterkopf) wrote:
>In article <9NOV92.14394645@skyfox.usask.ca> friesenda@skyfox.usask.ca writes:
> 
>>>DOS interrupt 21h, function 52 -> ES:BX pointer to DOS info table.
>>>Offset 21h is a byte value of LASTDRIVE in config.sys. (DOS 3.x at least).
>>>
>>I needed the same sort of function a few months back and thought I had
>>found the answer with some interrupt (I can't remember if it was 21h
>>or not), but as it turned out, at least in my case, using the interrupt
>>was useless.  I think the same goes for the above method.  Interrupt
>>21h will return the value of LASTDRIVE in _CONFIG.SYS_. If you are
>>running a network, or have LASTDRIVE set to anything but the ACTUAL
>>last drive on the machine you won't get the answer your looking for.
>>For example, on our network, O: is connected to a file service and is
>>the last drive on my machine.  If I use the above method it tells me
>>that my last drive is Z: (which is what it is set to in CONFIG.SYS).
> 
>	Well, isn't it good advice to set the LASTDRIVE to the lastdrive in
>the system? I belive that it conserves some memory. 

Yes, I suppose it does save a little memory, but since many of the network
drivers can be loaded into HMA or EMS it's that big of a concern. The
reason t is set to Z: it because, depending on what applications are being
run, other disk and file services are connected which contain the app, or
are used as temporary storage.

>>A better way, and the way I finally solved the problem, is to start
>>with drive Z: and work down testing if the disk exists, and stopping
>>when you finally find one that does.  There are a couple of ways to
>>do this. You could try to ChDir to that disk's root directory
>>(ie. CD Z:\).  Turbo Pascal has a built in ChDir (or something like 
>>that) function that will return an error code you can test.  Or
>>you could test for the existance of a file (or the root directory).
> 
>	I've used this "way" in one of my previous programs, except I used
>the TP6.0 DISKFREE function. The problem with this is that I stops my CDROM
>from playing AUDIO CDs. Will a CD X:\ not mess with my CD? I don't think so.
>Hence, the reason I'd like to know the LAST drive in the system. At least
>this way, if I get an invalid drive, I'd have a starting point. 

We don't have any (or at least very few) CDROM's on our network machines
so I've never run accross this problem.  I guess it's something to keep
in mind for the future though.


-----------------------------------------------------------------------------
Darryl Friesen          |  "The vet let me keep them... they're my testicles"
Univ. of Saskatchewan   |   - Far Side cartoon: dog talking to his buddy.
friesenda@sask.usask.ca |
Xref: sparky alt.lang.asm:447 comp.lang.pascal:6400 comp.os.msdos.programmer:10412 comp.sys.ibm.pc.programmer:554
From: villalj@xanth.CS.ORST.EDU (John Villalovos)
Newsgroups: alt.lang.asm,comp.lang.pascal,comp.os.msdos.programmer,comp.sys.ibm.pc.programmer
Subject: Re: LASTDRIVE function/asm/ect... Need one!
Keywords: lastdrive
Date: 8 Nov 92 11:02:32 GMT
Article-I.D.: flop.1dis48INNq6l
Organization: Oregon State University
NNTP-Posting-Host: xanth.cs.orst.edu

In article <1992Nov8.081922.15576@ra.msstate.edu> jdz1@Ra.MsState.Edu (John D. Zitterkopf) writes:
>Howdy,
>
>	As the subject says, I'm looking for some references on how to find
>the LASTDRIVE on a particular system. Something like a INTerrupt or source
>code that will allow me to do this. I did my best to search an interrupt list
>to come up with a solution to do this but no luck. For Example, My lastdrive
>is G, I'd like to make a TP6.0 function called LASTDRIVE that would return
>a byte value of 7 or so. If it's in Assembly, I can convert it, ect. 

I think that doing that is a little more complicated then a person might think.
I would recommend that you look in the book Undocumented DOS.  I believe it
talks about figuring out the lastdrive.  My copy is at work so I can't be
positive.  Thinks like Novell's NETX can mess things up as far as the 
LASTDRIVE, that's why it isn't so easy.

Good luck,
-- 
John Villalovos
Certified Netware Engineer
villalj@xanth.cs.orst.edu
(503) 753-7883
Newsgroups: alt.lang.asm
Subject: 80x86 assembly language libraries
From: CHEGC@LURE.LATROBE.EDU.AU (CROSS,Graeme)
Date: Thu, 12 Nov 1992 23:37:53 GMT
Organization: La Trobe University
X-News-Reader: VMS NEWS 1.24

A question for 80x86 programmers out there: do you use a commercial library of
assembly routines for your work, or have you written everything yourself? I
have come across advertisements for two libraries: Spontaneous Assembly (by
Base Two) and the Quantasm Power Lib (by Quantasm).
What are your experiences with one and/or the other?
Are there other libraries around?
Are the libraries worth the money?
Are they compatible with Turbo Assembler in Ideal mode?

If people e-mail their responses, I would be happy to post a summary here in a
week's time.

Thanks,

Graeme Cross              chegc@lure.latrobe.edu.au
Dept of Chemistry
La Trobe University
Bundoora, Victoria
Australia

Newsgroups: alt.lang.asm
From: beng@dorsai.com (ben ng)
Subject: Re: Need help with INT 21 ah=4b
Organization: The Dorsai Embassy, New York's Computer Consulate. +1.718.729.5018
Date: Thu, 12 Nov 1992 16:21:25 GMT

mikee@seas.gwu.edu (Mike Me) writes:

> now HOW the ??? do I set my registers and use a JMP to the
> location at the beginning of the code?
> 
> I do get the starting ip back, just none of the seqment & stack info
> etc.
> 
> 
Hiya Mike,
         You're in the same stop I've in. I'm a bit ahead of you though.
You set your registers just as if you're using 4B00h but you include:
4 words for the INT to return information on CS:IP:SS of the loaded 
program. From there you push the CS:IP:SS (Not sure of the order, don't
have my notes here) then you do an iret. It'll go to your program
execute it and return to the parent. You'll need some sort of flag
to check on its return to prevent it from looping. (Someone mailed me
something pertaining to this). I've been successful with a .COM file I
created. The .COM file has two messages and two jump locations. 
(Respective) And I'm able to intercept the .COM file and have it
display one message instead of the other. (The .COM was created to 
display "No, it didn't work!" while the other message was "Yes, it 
worked!." Though I still have to figure out how to do it to an .EXE
file.
 
Ben
Xref: sparky alt.lang.asm:454 comp.lang.pascal:6471 comp.os.msdos.programmer:10489 comp.sys.ibm.pc.programmer:567
From: librik@cory.Berkeley.EDU (David Librik)
Subject: Re: 32-bit addressing
Organization: University of California, at Berkeley
Date: Fri, 13 Nov 1992 06:52:31 GMT

corey@amiganet.chi.il.us (Corey Sweeney) writes:

>how do i get a 80286 or above into 32-bit addressing mode?  can this be done
>from turbo debugger?

Do you mean "32 bit registers"?  The 80286 doesn't have them; it's a 16 bit
machine.  The 386 and 486 have them, and you can use them even in real mode.
Unfortunately, many debuggers still don't have support for them (e.g.
Periscope).

Or do you mean "protected mode"?  The problem with running in protected
mode is that it is a pain and a half to access low memory (i.e. DOS and
video); you'll need something like Phar Lap's DOS extender.  You can get
a 286 into protected mode, but it's a kludge -- although I don't have the
code here, it involves sending a command to the keyboard controller and
then doing a quick reboot!  It's easier on the 386.

- David Librik
librik@cory.Berkeley.edu
From: rol@grasp1.univ-lyon1.fr (Paul Rolland)
Newsgroups: alt.lang.asm
Subject: Re: Re : 386/486 Question
Date: 12 Nov 92 08:34:17 GMT
Followup-To: alt.lang.asm
Organization: Apple Computer Europe

In article <JT.92Nov3171534@fizyk1.fuw.edu.pl>, jt@fuw.edu.pl (Jerzy
Tarasiuk) wrote:
> 
[Deleted stuff from Paul Rolland :)]
> 
> Some time ago I planned to write an disassembler for 80386 and prepared
> a file containing all its opcodes (I took all info from Intel handbook,
> verifying all opcodes if they do what is specified and founding several
> typographic errors, they are corrected in my file), is there anyone who
> want to use it to create such a resident help for 386 ?

Well, that's nice of you, but I already have written my own disassembler
and
it works fine for 8086 to 80386. What I'd like now is to extend it to the
80486. But, if you have some idea on the way to store compressed text in
such a resident so that it won't be hundreds of Kb, I can study the develop
ment of such a tool. (I don't like to access file from a resident even if 
i know the way to do it in a secure way, i prefer using memory, but not too
much).

Paul Rolland, rol@grasp1.univ-lyon1.fr
---

A bug can be changed to a feature by documenting it. Developpers know !

--------------------- DISCLAIMER -------------------

All the opinions I express in this posting are mine, but I'm
ready to share them with anybody interested :-)
Newsgroups: alt.lang.asm,comp.lang.pascal,comp.os.msdos.programmer,comp.sys.ibm.pc.programmer
From: ts@uwasa.fi (Timo Salmi)
Subject: Re: LASTDRIVE function/asm/ect... Need one!
Keywords: lastdrive
Organization: University of Vaasa, Finland
Date: Sun, 8 Nov 1992 14:33:52 GMT

In article <1992Nov8.081922.15576@ra.msstate.edu> jdz1@Ra.MsState.Edu (John D. Zitterkopf) writes:
>	As the subject says, I'm looking for some references on how to find
>the LASTDRIVE on a particular system. Something like a INTerrupt or source

100513 Sep 20 15:22 garbo.uwasa.fi:/pc/ts/tspa3060.zip
(You said you are using TP 6.0)

TSUNTG:
  :
  DSKCNTFN Get the number of disk devices (MsDos 3.0+)
  :

TSUNTH:
  :
  LASTDRFN Get last drive of the system, softcoded, not XTs
  :

Or test for the existence of the root directry of each potential
drive from A to Z until you get an error.  (I just posted the code
to comp.lang.pascal how to test for the existence of a directory). 

"If you do not know how to go about getting this material, users are
welcome to email me for the prerecorded garbo.uwasa.fi instructions
(long, circa 29Kb).  North American users are referred to the Garbo
mirror on wuarchive.wustl.edu.  Australian users are referred to the
archie.au mirror.  For the Asian users there is the NCTUCCCA.edu.tw
mirror.  The mirrors may lag occasionally, or might not have all the
files.  If you do not receive my reply within five days, please ask
your own site's system manager to construct a returnable mail path
for you". 

..................................................................
Prof. Timo Salmi
Moderating at garbo.uwasa.fi anonymous FTP archives 128.214.87.1
Faculty of Accounting & Industrial Management; University of Vaasa
Internet: ts@uwasa.fi Bitnet: salmi@finfun   ; SF-65101, Finland
Newsgroups: alt.lang.asm,comp.lang.pascal,comp.os.msdos.programmer,comp.sys.ibm.pc.programmer
From: "James F. Tims" <p00168@psilink.com>
Subject: Re: LASTDRIVE function/asm/ect... Need one!
Organization: Semper Excelsior
Date: Sun, 8 Nov 1992 18:56:10 GMT
X-Mailer: PSILink (3.2)

>DATE:   8 Nov 92 11:02:32 GMT
>FROM:   John Villalovos <villalj@xanth.CS.ORST.EDU>
>
>In article <1992Nov8.081922.15576@ra.msstate.edu> jdz1@Ra.MsState.Edu (John D. Zitterkopf) writes:
>>Howdy,
>>
>>	As the subject says, I'm looking for some references on how to find
>>the LASTDRIVE on a particular system. Something like a INTerrupt or source
>>code that will allow me to do this. I did my best to search an interrupt list
>>to come up with a solution to do this but no luck. For Example, My lastdrive
>>is G, I'd like to make a TP6.0 function called LASTDRIVE that would return
>>a byte value of 7 or so. If it's in Assembly, I can convert it, ect. 

DOS interrupt 21h, function 52 -> ES:BX pointer to DOS info table.
Offset 21h is a byte value of LASTDRIVE in config.sys. (DOS 3.x at least).

Do what you will.



-- 
jim tims 
"And if you're a miner, when you're too tired and old and sick and stupid
to do your job properly, you have to go, whereas just the opposite applies
with the judges."  Beyond the Fringe
From: johnm@cory.Berkeley.EDU (John D. Mitchell)
Newsgroups: alt.lang.asm
Subject: Re: 80x86 assembly language libraries
Date: 13 Nov 92 19:50:09 GMT
Organization: University of California, at Berkeley

In article <1992Nov12.233753.15247@lugb.latrobe.edu.au> CHEGC@LURE.LATROBE.EDU.AU (CROSS,Graeme) writes:
>A question for 80x86 programmers out there: do you use a commercial library of
>assembly routines for your work, or have you written everything yourself? I
>have come across advertisements for two libraries: Spontaneous Assembly (by
>Base Two) and the Quantasm Power Lib (by Quantasm).
>What are your experiences with one and/or the other?
>Are there other libraries around?
>Are the libraries worth the money?
>Are they compatible with Turbo Assembler in Ideal mode?

[Shameless plug by employee of GeoWorks]
Well, I went one step farther and use the GEOS operating system from
GeoWorks.  It's a graphical, pre-emptive, multi-threaded, multi-tasking,
object oriented operating system that written entirely in Object Assembly
(which is a superset of MASM).  Oh yeah, it runs on anything from an
original 8088 w/512Kb and CGA to the latest screamers.  It's truly awesome.
[End shameless plug]

But before that I used Spontaneous Assembly.  It's nice in that it's very
consistent, pretty well documented, the source is include (and for the most
part looks good).  They have just released a new version and a version
tailored to use from C.  My only problem with there stuff is that there's
not enough functionality but that's a matter of taste and need.  Oh yeah,
there sample apps or just okay.  I'd like to see a lot more and more
involved examples in the future.  I must say the the price was right when I
got it (only $69) so it was definitely worth it.

I've seen the ads for Quantasm but never got around to checking them out.
I seem to recall that the owner wrote articles for Programmer's Journal
awhile back (but I may be mistaken :-).

Hope this helps,
	John D. Mitchell
	johnm@cory.Berkeley.EDU

P.S.	I've no connection whatsoever with BaseTwo or Quantasm but must
	be biased towards GeoWorks because I work for them.  The opinions
	expressed herein are my *personal* views and none other.
	GeoWorks speaks for itself.
Xref: sparky alt.lang.asm:451 comp.lang.pascal:6423 comp.os.msdos.programmer:10436 comp.sys.ibm.pc.programmer:562
From: friesenda@skyfox.usask.ca
Newsgroups: alt.lang.asm,comp.lang.pascal,comp.os.msdos.programmer,comp.sys.ibm.pc.programmer
Subject: RE: LASTDRIVE function/asm/ect... Need one!
Date: 9 Nov 92 14:39:46 GMT
Organization: University of Saskatchewan

In a previous article, "James F. Tims" <p00168@psilink.com> wrote:
>>DATE:   8 Nov 92 11:02:32 GMT
>>FROM:   John Villalovos <villalj@xanth.CS.ORST.EDU>
>>
>>In article <1992Nov8.081922.15576@ra.msstate.edu> jdz1@Ra.MsState.Edu (John D. Zitterkopf) writes:
>>>Howdy,
>>>
>>>	As the subject says, I'm looking for some references on how to find
>>>the LASTDRIVE on a particular system. Something like a INTerrupt or source
>>>code that will allow me to do this. I did my best to search an interrupt list
>>>to come up with a solution to do this but no luck. For Example, My lastdrive
>>>is G, I'd like to make a TP6.0 function called LASTDRIVE that would return
>>>a byte value of 7 or so. If it's in Assembly, I can convert it, ect. 
> 
>DOS interrupt 21h, function 52 -> ES:BX pointer to DOS info table.
>Offset 21h is a byte value of LASTDRIVE in config.sys. (DOS 3.x at least).
> 
>Do what you will.

I needed the same sort of function a few months back and thought I had
found the answer with some interrupt (I can't remember if it was 21h
or not), but as it turned out, at least in my case, using the interrupt
was useless.  I think the same goes for the above method.  Interrupt
21h will return the value of LASTDRIVE in _CONFIG.SYS_. If you are
running a network, or have LASTDRIVE set to anything but the ACTUAL
last drive on the machine you won't get the answer your looking for.
For example, on our network, O: is connected to a file service and is
the last drive on my machine.  If I use the above method it tells me
that my last drive is Z: (which is what it is set to in CONFIG.SYS).

A better way, and the way I finally solved the problem, is to start
with drive Z: and work down testing if the disk exists, and stopping
when you finally find one that does.  There are a couple of ways to
do this. You could try to ChDir to that disk's root directory
(ie. CD Z:\).  Turbo Pascal has a built in ChDir (or something like 
that) function that will return an error code you can test.  Or
you could test for the existance of a file (or the root directory).

There's probably a better way, but this one is fairly quick and 
painless.

- Darryl


-----------------------------------------------------------------------------
Darryl Friesen          |  "The vet let me keep them... they're my testicles"
Univ. of Saskatchewan   |   - Far Side cartoon: dog talking to his buddy.
friesenda@sask.usask.ca |
Newsgroups: alt.lang.intercal
From: adam@owlnet.rice.edu (Adam Justin Thornton)
Subject: Re: Intercal 9x
Organization: Milo's Meadow
Distribution: alt
Date: Fri, 13 Nov 1992 20:51:07 GMT

In article <1e0u6kINN8g0@agate.berkeley.edu> faustus@ygdrasil.CS.Berkeley.EDU (Wayne A. Christopher) writes:
>In article <BxntAq.IoF@ibmpcug.co.uk> antipope@rachel.ibmpcug.co.uk (charless@scol.sco.com) writes:
>> Has there been any discussion of an object-oriented version of
>> Intercal? 

>I suggest we explore alternative and innovative paradigms, such as
>subject-oriented programming or even gerund-oriented programming.

My thinking suggests it's a great idea.

Adam


-- 
"And in the heartbreak years that lie ahead, |++| adam@rice.edu |++| Cthulhu
 Be true to yourself and the Grateful Dead." --Joan Baez  | 64,928 | fthagn!
"Very often, a common stone, thrown away and despised, is worth more than
 a cow." -- Paracelsus | If these were Rice's opinions I'd shoot myself.
Newsgroups: alt.lang.intercal
From: rumpe@Informatik.TU-Muenchen.DE (Bernhard Rumpe)
Subject: hello world
Originator: rumpe@sunbroy7.informatik.tu-muenchen.de
Organization: Technische Universitaet Muenchen, Germany
Date: Fri, 6 Nov 1992 16:45:06 GMT


In the ANSI/CCITT norm declaration centers some
interesting new features came up to discussion.
One favourite idea is the new intercal command:

   write_hello_world

In order to ease the newusers entrance in intercal,
this command does the usual:

  1 starts, 
  2 tries to write "hello world" in greek-letters on every 
     available screen in the house (or should it be street/town?) 
  3 comes from 1
  4 stops
  5 repeats 1-3 as often as possible 
    (or necessary)

Would You vote for this command, then vote YES (else don't vote)
Please do NOT send a vote to the sender of this article -- I wont read
anything.
From: pete@sst.icl.co.uk (Pete Bevin)
Newsgroups: alt.lang.intercal
Subject: Re: hello world
Date: 13 Nov 92 09:52:14 GMT
Reply-To: pete@sst.icl.co.uk (Pete Bevin)
Originator: pete@jura

Jerzy Tarasiuk writes:
> I suggest: count of PLEASE should be > 1/5 of statement count and
> count_of_PLEASE-1 should be < 1/3, this makes possibility to write
> single-line program: 0001 PLEASE WRITEHELO which otherwise would be
> rejected by compiler (programmer too polite),

You don't need to do that -- you can just add extra (useless) statements
before, during or after the line you want.

Changes like that are just the sort of thing that threaten to destroy
Intercal's concise, elegant structure.  It's important to find out ways
of doing things in the language, rather than changing the compiler every
time we have a problem.

Pete.
--
Pete Bevin -- pete@sst.icl.co.uk
Newsgroups: alt.lang.intercal
From: jt@fuw.edu.pl (Jerzy Tarasiuk)
Subject: Re: hello world
Organization: Warsaw University Physics Dept.
	<1992Nov6.164506.19620@Informatik.TU-Muenchen.DE>
Date: Thu, 12 Nov 1992 17:16:37 GMT

>>>>> On Fri, 6 Nov 1992 16:45:06 GMT, rumpe@Informatik.TU-Muenchen.DE (Bernhard Rumpe) said:
Bernhard> Originator: rumpe@sunbroy7.informatik.tu-muenchen.de
Bernhard> In the ANSI/CCITT norm declaration centers some
Bernhard> interesting new features came up to discussion.
Bernhard> One favourite idea is the new intercal command:
Bernhard>    write_hello_world
Bernhard> In order to ease the newusers entrance in intercal,
Bernhard> this command does the usual:
Bernhard>   1 starts, 
Bernhard>   2 tries to write "hello world" in greek-letters on every 
Bernhard>      available screen in the house (or should it be street/town?) 

On any available screen in network: cannot write on screen of TV set
if it is not connected to computer or not powered on...

But the command name is too long, better use write_hello or writehello
or even writehelo. More, need a change in user politeness check made
by compiler: actually compiler requires >1/5 and <1/3 of all statements
to contain keyword PLEASE. I suggest: count of PLEASE should be > 1/5
of statement count and count_of_PLEASE-1 should be < 1/3, this makes
possibility to write single-line program: 0001 PLEASE WRITEHELO
which otherwise would be rejected by compiler (programmer too polite),
note writing: 0001 DO WRITEHELO is rejected (insufficiently polite).
Hope the problem will be fixed in next release...
Newsgroups: alt.lang.intercal
From: marc@vieta.math.uni-sb.de (Marc Conrad)
Subject: Re: hello world
Organization: U of Saarbruecken, Dept. of Computational Linguistics
Date: Tue, 10 Nov 1992 12:01:23 GMT

rumpe@Informatik.TU-Muenchen.DE (Bernhard Rumpe) writes:

[stuff deleted]
YES
From: faustus@ygdrasil.CS.Berkeley.EDU (Wayne A. Christopher)
Newsgroups: alt.lang.intercal
Subject: Re: Intercal 9x
Date: 13 Nov 92 19:03:48 GMT
Distribution: alt
Organization: University of California, Berkeley
NNTP-Posting-Host: ygdrasil.cs.berkeley.edu

In article <BxntAq.IoF@ibmpcug.co.uk> antipope@rachel.ibmpcug.co.uk (charless@scol.sco.com) writes:
> Has there been any discussion of an object-oriented version of
> Intercal? 

Every language and its dog these days is object oriented.  Surely we
can do better, or at least different.  You know what they say, nobody
who remembers the past has the courage to reinvent the square wheel.

I suggest we explore alternative and innovative paradigms, such as
subject-oriented programming or even gerund-oriented programming.  I
don't even remember what a gerund is, and if most other
language-design people don't either then maybe there are some virgin
research territories waiting to be exploited.

	Wayne
From: schultz@rucs2.sunlab.cs.runet.edu (Schultz)
Newsgroups: alt.lang.ml
Subject: manual
Date: 9 Nov 92 00:26:51 GMT
Organization: Radford University


	If anyone knows where I can get a manual or papers on standard ml that 
would be easy to understand please post or email me thanks....

dav
Newsgroups: alt.lang.ml
From: schultz@rucs2.sunlab.cs.runet.edu (Schultz)
Subject: standard in and output
Organization: Radford University
Date: Sun, 8 Nov 1992 23:38:20 GMT


	How do you read from a file and print it to standard out?????



_________________________________________________________________________
|      David Schultz                | schultz@rucs2.sunlab.cs.runet.edu  |
|    Radford University             |                                    |
|          CPSC                     | F u cn rd ths u cnt spl wrth a dm! | 
-------------------------------------------------------------------------



Newsgroups: alt.lang.ml,comp.lang.functional,comp.sys.next.prog,comp.sys.next.misc