🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.m68k.pc
Article #135

RE: Kermit68K under CP/M-68K, help needed

#135
From: Stride 440 User
Date: Tue, 25 Aug 1987 13:24
59 lines
3303 bytes
> Date: Mon, 24 Aug 87 12:11 N
> From: BAGNARA%IBOINFN.BITNET@JADE.BERKELEY.EDU
> Subject: Kermit68K under CP/M-68K, help needed
> To: info-68k@UCBVAX.BERKELEY.EDU
> Message-Id: <8708241014.AA17893@jade.berkeley.edu>

> 1) By reading the manual and looking at my BIOS sources it seems impossible
>    to check the status of the auxiliary input device, that is the system
>    services handler, once called, doesn't return until a character is received.
>    If this is true I can't implement input timeouts in a portable way,
>    I need a small serial driver for each machine. Am I wrong ?
> 

Yes, you are right.  CP/M-68K has no O/S hooks to any sort of timer either.
So you either need to write a delay loop or use machine-dependent code to
access a machine's timer (most 68K boxes do have some sort of heart-beat
clock).

> 2) The Search for First and Search for Next system services seem don't
>    care of the passed FCB content, any directory entry is returned regardless
>    of the file name and type I've written into the FCB. Should I do
>    the filename matching by myself ? In this case has anyone a suitable
>    assembly language routines ?
> 

Wrong.  On the Search for First you pass a FCB with a wildcarded file spec.
There is a special form which does get every dirent, but you don't want
that!  One other point:  You can't do ANY other file I/O which scanning with
Search First/Search Next.  You need to collect the file names into a list
first (I use a malloc'ed alpha-sorted linked-list - I have the routines
embeded in several programs), then use the list to process each file.
Remember to set the DMA address to a vector of four "short" (32-byte) FCB's
before calling Search/First!  This is where the matched file names get
stashed.  The result status code is either 0x00FF (no more files matched) or
an integer from 0 to 3, to be used as an index to the four dirent/FCB vector
pointed to by the DMA address.


---------------------------------------


If you are interested, I can post code fragments doing the file name
hackery.  Also note: the normal CP/M-68K 1.2 C startup hack does wild-card
expansion of the command line, just like UNIX's csh (more or less).

I'd also like a copy of this program for CP/M-68K.  I presently have a
rather funcky old version that has been ported several times.  I'd be
willing to write the Stride 400 series serial driver code for other Stride
400/CP/M-68K users.

		Robert Heller
ARPANet:	Heller@CS.UMass.EDU
BITNET:		Heller@UMass.BITNET
BIX:		Heller
GEnie:		RHeller
FidoNet:	321/148 (Locks Hill BBS, Wendell, MA)
CompuServe	71450,3432
Local PV VAXen:	COINS::HELLER
UCC Cyber/DG:	Heller@CS
Technical Details
Message-ID: <8708260526.AA07640@ucbvax.Berkeley.EDU>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!seismo!rutgers!ames!ucbcad!ucbvax!cs.umass.EDU!HELLER

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!seismo!rutgers!ames!ucbcad!ucbvax!cs.umass.EDU!HELLER
From: HELLER@cs.umass.EDU (Stride 440 User)
Newsgroups: comp.sys.m68k.pc
Subject: RE: Kermit68K under CP/M-68K, help needed
Message-ID: <8708260526.AA07640@ucbvax.Berkeley.EDU>
Date: Tue, 25-Aug-87 09:24:00 EDT
Article-I.D.: ucbvax.8708260526.AA07640
Posted: Tue Aug 25 09:24:00 1987
Date-Received: Thu, 27-Aug-87 07:06:02 EDT
Sender: mwm@ucbvax.BERKELEY.EDU
Organization: The ARPA Internet
Lines: 59
Approved: info-68k@ucbvax.berkeley.edu