You can't segment an application haphazardly. The rules for segmenting are
listed in the targeting palmos manual in the docs folder. In short, you
can't have code in segments that will be called for any launch codes other
than normal launch. Any code that is called for those other launch codes
must stay in segment 1. It has to do with how the globals register, A5, is
set up (or not).
-E
> -----Original Message-----
> From: Greg Bungo [mailto:[EMAIL PROTECTED]]
> Sent: Monday, November 15, 1999 7:33 AM
> To: [EMAIL PROTECTED]
> Subject: Re: CodeWarrior and "BDWM"
>
>
> Hello,
>
> It WAS the 64K segment limit. Apparently one must do more than
> just create separate segments of the appropriate size. In the
> Project Settings>Linker>68K Linker
> dialog it is necessary to turn off the Link Single Segment setting.
> Obvious in retrospect, but very confusing for a person who's building
> a multisegment program for the first time.
>
> Now I have another problem. There is a bus error as soon as I enter
> a function in a different segment from the start up segment. This is
> happening within StartApplication(). Must I wait until after
> StartApplication() before running code in a second segment, or is
> there something else wrong? I'm running POSE 2.1d29 with a
> 3.0 IIIx ROM.
>
> I'm going to cross post this message to the emulator-forum, since
> I have no way of knowing whether this is an emulator problem or
> a CW problem or a PalmOS problem or just stupidity on my part.
> Sorry for the extra traffic.
>
> Thanks,
>
> Greg Bungo
>
> ----- Original Message -----
> From: Jun-Kiat Lam <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Sunday, November 14, 1999 11:29 PM
> Subject: Re: CodeWarrior and "BDWM"
>
>
> > >From the looks of the error message it seems that you may have indeed
> > overrun the 64K
> > per segment limit. One way to check for sure how much each segment is
> adding
> > up to is to generate a link map, which you can set in the 68K Linker
> panel.
> > When it builds, a .MAP file will be generated. Open this file
> in the IDE,
> it
> > will show you the actual size of each segment. You may need to do some
> > rearranging if this is the case.
> >
> > Rgds,
> > Jun-Kiat Lam
> > Metrowerks Technical Support
> >
> > ----- Original Message -----
> > From: Greg Bungo <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Sunday, November 14, 1999 11:39 AM
> > Subject: Re: CodeWarrior and "BDWM"
> >
> >
> > > Eric,
> > >
> > > I have 4 code segments.
> > > Here are the sizes:
> > > Code Data
> > > 37K 4K
> > > 14K 8K
> > > 18K 5K
> > > 7K 1K
> > >
> > > After I sent my message, I realized I should have
> > > mentioned my segmentation. Thanks for your
> > > suggestion. It's a plausible try. Is it possible
> > > that I have too many segments?
> > >
> > > Greg
> > >
> > > ----- Original Message -----
> > > From: Eric Cloninger <[EMAIL PROTECTED]>
> > > To: <[EMAIL PROTECTED]>
> > > Sent: Friday, November 12, 1999 6:09 PM
> > > Subject: RE: CodeWarrior and "BDWM"
> > >
> > >
> > > > Is that 88K application all in one code segment? That could be your
> > > > problem. No code segment can exceed 64k.
> > > >
> > > > -E
> > > >
> > > > > -----Original Message-----
> > > > > From: Greg Bungo [mailto:[EMAIL PROTECTED]]
> > > > > Sent: Friday, November 12, 1999 1:56 PM
> > > > > To: [EMAIL PROTECTED]
> > > > > Subject: Re: CodeWarrior and "BDWM"
> > > > >
> > > > >
> > > > > Hi,
> > > > >
> > > > > I'm using POSE 2.1d29 and PalmIIIxDebug.rom, which is
> > > > > version 3.0. I just received CW v 6 final this afternoon,
> > > > > and the bug is still there. The size of my executable *.prc
> > > > > file is about 88k.
> > > > >
> > > > > Greg Pasquariello suggested reinstalling CW, but since
> > > > > I just got the final CD an hour ago, and that didn't work the
> > > > > first time, I guess that's not a solution for me. (my previous
> > > > > errors were in the beta version)
> > > > >
> > > > > I suppose this really belongs on the emulator forum, but
> > > > > since this thread already exists, I'll mention it here:
> > > > >
> > > > > Since I couldn't download to the emulator, I tried loading
> > > > > the file from within POSE. Here's the error message:
> > > > >
> > > > > "Could not install the Palm OS file "whatever" because
> > > > > Palm OS error 0x0201 (dmErrMemError) occurred."
> > > > >
> > > > > I hope this information is useful. Thanks for responding,
> > > > >
> > > > > Greg Bungo
> > > > > [EMAIL PROTECTED]
> > > > > (630)949-3250 voice
> > > > > (630)949-3299 fax
> > > > >
> > > > > ----- Original Message -----
> > > > > From: Jun-Kiat Lam <[EMAIL PROTECTED]>
> > > > > To: <[EMAIL PROTECTED]>
> > > > > Sent: Friday, November 12, 1999 3:06 PM
> > > > > Subject: Re: CodeWarrior and "BDWM"
> > > > >
> > > > >
> > > > > > Hi Greg,
> > > > > >
> > > > > > The error message itself is a bug. Actually, what it indicates
> > > > > is that the
> > > > > > debugger has failed to connect to POSE. There could a number of
> > > reasons
> > > > > why
> > > > > > that happened, ranging from debugging to a Color ROM (debugger
> > doesn't
> > > > > > support that yet), app overruning 64K per segment limit
> > > > > (illegal app will
> > > > > be
> > > > > > built and POSE will reject that) to a debugger failing to
> > > > > connect. Try the
> > > > > > 'CW Debugging Cache' in c:\Windows\Metrowerks to see if
> it helps.
> > BTW,
> > > > > which
> > > > > > version of POSE and ROM are you using as well? This
> would help in
> > > > > narrowing
> > > > > > things down.
> > > > > >
> > > > > > Rgds,
> > > > > > Jun-Kiat Lam
> > > > > > Metrowerks Technical Support
> > > > > >
> > > > > > ----- Original Message -----
> > > > > > From: Greg Bungo <[EMAIL PROTECTED]>
> > > > > > To: <[EMAIL PROTECTED]>
> > > > > > Sent: Friday, November 12, 1999 1:29 PM
> > > > > > Subject: Re: CodeWarrior and "BDWM"
> > > > > >
> > > > > >
> > > > > > >
> > > > > > > Thanks for your reply.
> > > > > > >
> > > > > > > Unfortunately, it didn't work for me. Maybe I just don't know
> how
> > > > > > > to run mwregsvr.exe. I found a log file, and I ran mwregsvr
> > twice;
> > > > > > > once with each set of options:
> > > > > > >
> > > > > > > mwregsvr .\Plugins\Support\CPlusSourceGen.dll
> > > > > > > mwregsvr .\Plugins\Support\MWComHelpers.dll
> > > > > > >
> > > > > > > In both cases I got a favorable exit message, but the debugger
> > still
> > > > > > > won't work. Did you use a different set of command line
> options?
> > > > > > > (I also tried the /i path dllname technique with no success).
> > > > > > >
> > > > > > > I wasn't able to find mwregsvr in the CodeWarrior
> documentation.
> > > > > > > Did I just miss an obvious place to look, or is it really
> > > > > > > undocumented?
> > > > > > >
> > > > > > > I also tried to run MWRegSvrWinApp.exe, but that
> didn't seem to
> > > > > > > do anything at all except exit immediately.
> > > > > > >
> > > > > > > Greg Bungo
> > > > > > > [EMAIL PROTECTED]
> > > > > > > (630)949-3250 voice
> > > > > > > (630)949-3299 fax
> > > > > > >
> > > > > > > > I've got CW 6 and ran into the same problem. I
> tried running
> > > > > > mwregsvr.exe
> > > > > > > > in the hopes that it would reregister the appropriate
> services.
> > > It
> > > > > > > appears
> > > > > > > > to work.
> > > > > > > >
> > > > > > > > -G
> > > > > > > >
> > > > > > > > ---
> > > > > > > > Greg Pasquariello
> > > > > > > > CTO, PrivaSeek, Inc.
> > > > > > > > [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
> > > > > > > > 303-410-4632
> > > > > > > >
> > > > > > > >
> > > > > > > > >
> > > > > > > > > What is "BDWM"? I assume it stands for
> > > > > > > > > Bugger De Werks Metro, but why is it in the
> > > > > > > > > beta version 6? Recently, when I try to run
> > > > > > > > > the debugger, I get this message:
> > > > > > > > >
> > > > > > > > > "The debug helper app could not be found.
> > > > > > > > > The registry key, "BDWM", is not defined."
> > > > > > > > >
> > > > > > > .........
> > > > > > > > >
> > > > > > > > > Until recently, the "BDWM" message would
> > > > > > > > > only occur intermittently. Now, it happens
> > > > > > > > > all the time and prevents use of the debugger.
> > > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
> >
>
>
>
>