Page 1 of 1

ASM, interrupt Call, call absolute

Posted: Mon May 02, 2005 2:34 am
by SebMcClouth
I have noticed they combining these ASM (ASM and call absolute are together, I now) and interrupt call, go straight in not being able to run the program at all. Is there a way to get around this?

grtz

Posted: Tue May 03, 2005 3:31 am
by Macric
would you please try to explain some more extensively? thank you

Posted: Tue May 03, 2005 3:40 am
by SebMcClouth
If I combine

Code: Select all

CALL ABSOLUTE 
and

Code: Select all

CALL INTERRUPT  or CALL INTERRUPTX
together in a program e.g. using CALL ABSOLUTE to get info on the CPU and CALL INTERRUPT to get info on the videocard, QB 4.5 says it can't find the

Code: Select all

SUB ABSOLUTE
, eventhough I have

Code: Select all

'$include:'qb.bi'
included.

grtz

Posted: Tue May 03, 2005 9:30 am
by Kyle
Have you loaded QB with the /L switch?

Posted: Tue May 03, 2005 11:02 am
by SebMcClouth
Yes I always load QB with /L switch.

grtz

Posted: Tue May 03, 2005 5:07 pm
by Plasma
The problem is most likely that the CALL ABSOLUTE declare in QB.BI conflicts with your CALL ABSOLUTE statements in your program. This is because CALL ABSOLUTE is declared with only one parameter in QB.BI, but the assembly routines you are using take multiple parameters.

To fix this, just remove the CALL ABSOLUTE declare in QB.BI.

Posted: Wed May 04, 2005 12:10 am
by SebMcClouth
So... one question: how can I use CALL ABSOLUTE if I remove it from QB.BI...

grtz

Posted: Wed May 04, 2005 12:48 am
by Z!re
By using: CALL

Posted: Wed May 04, 2005 11:38 am
by SebMcClouth
Wouldn't I then have to define in my program:
DECLARE SUB ABSOLUTE()

Grtz

Posted: Wed May 04, 2005 1:27 pm
by Guest
No. Only functions and subs without CALL have to be declared.

Posted: Wed May 04, 2005 2:10 pm
by SebMcClouth
So by removing Absolute from qb.bi it should work.
Right??

grtz

Posted: Wed May 04, 2005 3:12 pm
by Kyle
Try it. Let us know if you get it working.

Posted: Fri May 06, 2005 2:58 am
by SebMcClouth
@ first sight it seems to work. I'll keep U all posted on this.

grtz