Article View: comp.sys.atari.st
Article #31117Laser C question
From: Steven Grimm
Date: Mon, 07 Mar 1988 23:21
Date: Mon, 07 Mar 1988 23:21
27 lines
1386 bytes
1386 bytes
I'm porting a program (BB/ST, my bulletin board system)) to Laser C
(from Megamax 1.1). All the C stuff compiles without a hitch, but the
inline assembly is a bit different. In particular, I need to know how
to reference a label defined in an inline assemble segment, from the
rest of the program. This code worked on the old compiler:
extern foo();
asm {
foo:
clr.l A7
rts
}
You could call foo() from another part of the program. That doesn't seem
to work in Laser C. My other question is probably closely related; I want
to install some trap handlers. The code
lea trap1hand(PC), A0
move.l A0, 0x90 ; or whatever address
worked in Megamax C; now it says "trap1hand undefined", even if it's defined
in the same asm{} block. I've tried taking away the "(PC)", changing it
to move.l #trap1hand, 0x90 (which would be the ideal way to do it), and a
couple other things, to no avail.
Any help would be appreciated.
Technical Details
Message-ID:
<2234@saturn.ucsc.edu>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!water!watmath!clyde!att-cb!att-ih!pacbell!ptsfa!ames!pasteur!agate!saturn!ssyx.ucsc.edu!korethShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watmath!clyde!att-cb!att-ih!pacbell!ptsfa!ames!pasteur!agate!saturn!ssyx.ucsc.edu!koreth From: koreth@ssyx.ucsc.edu (Steven Grimm) Newsgroups: comp.sys.atari.st Subject: Laser C question Message-ID: <2234@saturn.ucsc.edu> Date: 7 Mar 88 23:21:15 GMT Sender: usenet@saturn.ucsc.edu Reply-To: koreth@ssyx.ucsc.edu (Steven Grimm) Organization: The American Redundancy Society of America Lines: 27