Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!whuxl!whuxlm!akgua!gatech!seismo!cmcl2!lanl!myxm From: myxm@lanl.UUCP Newsgroups: net.micro.pc Subject: Help With Microsoft C and IBM BasCom? Message-ID: <756@lanl.ARPA> Date: Tue, 4-Feb-86 17:59:17 EST Article-I.D.: lanl.756 Posted: Tue Feb 4 17:59:17 1986 Date-Received: Fri, 7-Feb-86 20:25:20 EST Distribution: net Organization: Los Alamos National Laboratory Lines: 38 I am having problems getting modules compiled with the IBM (Microsoft) Basic Compiler to talk to modules compiled with the Microsoft C Compiler. The application which I am trying to get running involves using a module compiled with the BasCom which has graphics (ie., line, circle, color,...) and a main C program. I have not been able to set up the stack correctly from C to simulate the sequence required by the BasCom procedures. It turns out that my C application has been compiled using the large memory model (with 32 bit addresses SEG:OFF) and the BasCom routines are looking for a stack slightly different (16 bit addresses :OFF). I am interested in any help that someone might be able to give me reguarding the passing of parameters between these different routines. How does one pass a (char *) argument from C and have it turn into a PARAM$ in the BasCom subroutine? What about integers? The routines that I am working on look something like: C .. .. basicroutine((char *) bufferpointer); basicroutine2((int) integerparameter); .. .. result = basicroutine3((int) integerparameter); .. .. BASIC 10 sub basicroutine(a$) static 20 print a$ 30 end sub 40 sub basicroutine2(integerparameter%) static 50 print integerparameter% 60 end sub 70 sub basicroutine3(integerparameter%) static 80 basicroutine3 = integerparameter% * 5 90 end sub Thank you in advance for any help.. Mike Mitchell lanl!myxm