Welcome, Guest. Please login or register.

Author Topic: NDK 3.1 Include file problem.  (Read 5011 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline ThorhamTopic starter

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
NDK 3.1 Include file problem.
« on: February 02, 2011, 04:30:32 PM »
Hi,

After obtaining the NDK 3.1 include files, I've been unable to use any _LVOxxx names in my source code, such as _LVOOpenLibrary and _LVOOpenScreenTagList. In the case of the exec functions in exec_lib.i, the problem seems to be that all functions need this FUNCDEF thing, and for other libraries there's no libname_lib.i at all!

What is going on here? I want to use the NDK 3.1 include files because I only have the Devpak Os 2.x includes, and want to use proper OS 3.0+ include files.

Any help is appreciated :)
 

Offline ThorhamTopic starter

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: NDK 3.1 Include file problem.
« Reply #1 on: February 03, 2011, 05:34:02 PM »
To ChaosLord:

Nope, none of the above I'm afraid :( Those darned NDK 3.1 includes just don't seem to work in the same way as the Devpak 2.x includes I have (seems the LVOs are in amiga.lib).

Perhaps it's best to simply stick to those Devpak includes after all.
 

Offline ThorhamTopic starter

  • Hero Member
  • *****
  • Join Date: Oct 2009
  • Posts: 1150
    • Show all replies
Re: NDK 3.1 Include file problem.
« Reply #2 on: February 04, 2011, 07:56:49 PM »
Quote from: ChaosLord;612191
I have been using Devpak 3.x for a zillion years without any insurmountable problems... Then again I don't call many os routines from asm.  For me, the whole point of asm is to avoid using the OS as much as possible :)
The problem is with functions such as LoadRGB32, which don't exist on OS2.x.

I used to hit the hardware all the time, but I want to write software that works properly under the OS now using intuition screens (but without the OS routines to write to the screen, direct access to the screen is much better). Especially now that I'm using an RGB->VGA converter.
Quote from: Joloo;612196
Well, as far as only the LVOs are concerned, you can manually create them using the fd2pragma program:

fd2pragma TO SPECIAL 23
Yup, that seems to be the only good solution. I found some LVO includes on my HD and I might generate them from the C includes properly. Thanks for the tip :)
Quote from: Joloo;612196

Unfortunately, the CALLXXX (CALLGRAF,CALLDOS) macros will not be created by fd2pragma, nor the basename macro (GRAFNAME,DOSNAME).
Not a problem, because I'm making a system frame for handling all this system stuff.
Quote from: Joloo;612196
If I am not mistaken, I never override my NDK 3.0 include files with that of NDK 3.1 because there were a bunch of errors in those ASM-include files and I never was in the mood to fix them.
Hmm, I'll watch out for those then. Perhaps I'll just use the NDK 3.9 then. Shouldn't matter much, right?
Quote from: Joloo;612196
If you like, I can upload my ASM include files covering the 3.0 API.
Thanks, but I don't think I'll need them ;)
Quote from: Joloo;612196
Quiet normal I would say. All versions of the SDK/NDK came without the assembler LVOs and only EXEC and REXX came with the FUNCDEF and LIBDEF defined LVOs, in addition, they can't work out of the box because the important FUNCDEF macro is put out of order (exec/libraries.i). Next, I wouldn't rely on these macro defined LVOs at all because (at least for NDK3.9) by mistake some v36 include files went into the NDK which should have been v40...
It was and is still better to create these LVOs on your own.
Hmm, quite sucky. Why did they do that? There seems to be no point...