[comp.sys.apple2] Mem Mgr error $207

ieeug330@Eagle.oscs.montana.edu (Mark Wistey) (03/11/91)

I need help urgently.  I am getting a $207 error (Bad ID) from the
memory manager on a MMAppInit call!  I'm calling it from a regular
binary file under BASIC.SYSTEM; when called from under GS/OS (then
BASIC) it just locks up, so I don't think the lack of an OS 
is making the difference.  Any suggestions are much appreciated!

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Mark.Wistey@msu3.oscs.montana.edu (BITNet/InterNet)  | Sailboards, Apple II's,
gmw1142@mtsunix1, or gmw1142@msu3.oscs.montana.edu   | Christ-like living,
Quad D, #305B, Bozeman, MT 59715                     | Music, and Physics  :-)

dlyons@Apple.COM (David A. Lyons) (03/26/91)

In article <009456A3.2C938360@Eagle.oscs.montana.edu> ieeug330@Eagle.oscs.montana.edu (Mark Wistey) writes:
>I need help urgently.  I am getting a $207 error (Bad ID) from the
>memory manager on a MMAppInit call!  I'm calling it from a regular
>binary file under BASIC.SYSTEM; when called from under GS/OS (then
>BASIC) it just locks up, so I don't think the lack of an OS 
>is making the difference.  Any suggestions are much appreciated!
>
>- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>Mark.Wistey@msu3.oscs.montana.edu (BITNet/InterNet)  | Sailboards, Apple II's,
>gmw1142@mtsunix1, or gmw1142@msu3.oscs.montana.edu   | Christ-like living,
>Quad D, #305B, Bozeman, MT 59715                     | Music, and Physics  :-)

Mark, the MMStartUp returns the memory ID of the block containing the address
from which you make the call.  If you've booted GS/OS and launched a ProDOS 8
application from there, this is fine, because GS/OS allocates all the memory
areas ProDOS 8 needs with a $3xxx memory manager ID.

If you've booted ProDOS 8 directly, the memory your SYS program is is is *not*
allocated at all, and if you call MMStartUp you get the error you're getting.

In this case, you should call GetNewID in the Misc Tools to get a $1xxx id
allocated for yourself; then use NewHandle to allocate the following four
areas of memory:

address length
------- ------
000800  b800
010800  b800
e02000  4000
e12000  8000

This sets up the same environment that GS/OS normally sets up for a ProDOS 8
application.

This information can be found in ProDOS 8 Technical Note #27, "Hybrid
Applications," last revised March 1990.
-- 
David A. Lyons, Apple Computer, Inc.      |   DAL Systems
Apple II System Software Engineer         |   P.O. Box 875
America Online: Dave Lyons                |   Cupertino, CA 95015-0875
GEnie: D.LYONS2 or DAVE.LYONS         CompuServe: 72177,3233
Internet/BITNET:  dlyons@apple.com    UUCP:  ...!ames!apple!dlyons
   
My opinions are my own, not Apple's.