Hi, I'm just about to start writing an exchange library, and I have some questions about getting started...
- I'm confused about the CW9 project settings for the library and app that are built by the host transfer project. The project builds both a host transfer library and host transfer test application, but it seems to just be setup for building an application. I didn't know CW could build multiple executables under a single target in a single project and I don't see where the settings are for the ExgLib executable. Since this is the only ExgLib example, I don't know what project project settings one would use to just build an ExgLibrary. The host transfer project's "Type" is "Palm OS Application" (not "PalmOS Code Resource" or "Code Library") and it's Output file "Type" is "appl" (not "libr"). And the project links to StartupCode.lib, but doesn't have CWRuntime.c. If I just want to build an exg lib and not an app, shouldn't my project exclude StartupCode.lib and use CWRuntime.c and be of type "PalmOS Code Resource" and output file type "libr"? - I'm also confused about how an exchange library is registered with the exg mgr. The host transfer example's library code does have a PrvInstallHostTransferDispatcher() routine that says it will be called when the library is installed. But first, it's not clear how that function becomes the entry point at install time; and second, in this case, the library is not actually installed that way. Instead, it's commented out, and the library is installed by the host transfer test application. - Lastly, I'd be interested to hear any more on issues with OS5 -- whether anything has to be done differently for the dispatch jump table's assembly code, what the expectation should be for when the known bug for exgPut might be fixed, or whether there's a workaround as Matt alluded in mentioning the SMS exchange library working on OS5. Thanks, Jason --- In [EMAIL PROTECTED], "Matt Hebley" <[EMAIL PROTECTED]> wrote: > I have written a shared (exchange) library that is built as type 'appl' and > installs itself as the library - following the HostTransfer example. This > works fine on OS4, but not on OS5. > > On OS5, the library appears to install OK, but the application call to > exgPut returns exgErrBadLibrary. > > I can step through the registration and it all seems OK, except the table > returned by the GetDispatchTable seems to be all zeros in OS5 (and all 0x55 > in OS4???). > > Perhaps someone could shed some light on what has to be done to install > shared libraries in OS5 (I would have to think real hard about what happens > to 68k function pointers, etc.). Do I need to define another processor type > in the dispatch table definition, or does OS5 emulate the m68k stuff as for > normal code? > > I tried looking for the example in the OS5 sdk, but noticed the shared > library example has been removed. > > I am using the PalmSim 5.1.0.28, but the same symptoms appear on a real > device. -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/