myxm@lanl.UUCP (02/05/86)
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