Path: utzoo!utgpu!water!watmath!clyde!motown!vilya!lcuxlm!whuts!att!rutgers!gatech!bbn!bbn.com!levin
From: levin@bbn.com (Joel B Levin)
Newsgroups: comp.sys.mac.programmer
Subject: LSC help for non-LSC programmer
Message-ID: <28610@bbn.COM>
Date: 18 Aug 88 14:10:02 GMT
Sender: news@bbn.COM
Reply-To: levin@BBN.COM (Joel B Levin)
Organization: BBN Communications Corporation
Lines: 55

I am trying to put together some stuff using MPW C (and assembler
where necessary), based on work already done in Think LSC.  I don't
have either LSC or its manual.  Most of it is straightforward and is
not giving me any trouble, but one file has things which seem to be
based on features special to LSC.  Can someone send a brief answer to
what is going on in the following bits?

    ...

The first line of the file is:

    #Options +K Z 

What is the effect of these?

    ...

What in general is it getting out of these?

    #include    "MacDefs.h"
    #include    "MacCDefs.h"

    ...

There are several instances of two routines like the following:
what's going on?  Is this just some do-it-yourself glue?  I thought
all the appropriate calling sequences were understood.

    tDoThings ( theWindow, item )
    WindowPtr theWindow; INTEGER item;
    {
      /* some ordinary C code to futz with stuff in the window */    
    }

    xDoThings ( theWindow, item )
    WindowPtr theWindow; INTEGER item;
    {
    #asm
	move.l  (SP)+,A0
	move.w  (SP)+,D1
	move.l  (SP)+,D0
	move.l  A0,-(SP)
	jsr     tDoThings
	rts
    #endasm
    }

    ...

Thanks for taking the time.

	/JBL
UUCP: {backbone}!bbn!levin     USPS: BBN Communications Corporation
ARPA: levin@bbn.com                  150 CambridgePark Drive
POTS: (617) 873-3463                 Cambridge, MA  02140