[comp.sys.mac.programmer] LSC help for non-LSC programmer

levin@bbn.com (Joel B Levin) (08/18/88)

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

levin@bbn.com (Joel B Levin) (08/20/88)

In article <28610@bbn.COM> I wrote:
(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?
(
(    #Options +K Z 
(
(    ...
[ other stuff about some assembly glue code and funny header files ]

I have been advised that this code is not LSC but perhaps Manx or
Consulair.  That explains why (a) some other header file names were
spelled differently and (b) there was a similarly named source file
with some dummy functions in it.  I should explain that all the rest
of the source files are definitely LSC.  I guess the last person who
touched that code had himself been porting form yet an older compiler
and hadn't gotten around to the hard stuff.

Thanks, Patrick and Tom.

	/JBL

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