Path: news.uiowa.edu!news.physics.uiowa.edu!math.ohio-state.edu!jussieu.fr!oleane!tank.news.pipex.net!pipex!news.mathworks.com!uunet!in1.uu.net!news.vanderbilt.edu!lesherjt From: lesherjt@vuse.vanderbilt.edu (John Lesher) Newsgroups: comp.sys.apple2.programmer Subject: Re: Console Driver Qs Date: 15 Mar 1996 05:34:04 GMT Organization: Vanderbilt University School of Engineering, Nashville, TN, USA Lines: 32 Message-ID: <4iavgc$okv@news.vanderbilt.edu> References: <4hnr39$kil@tuba.cit.cornell.edu> <4hrciu$94d@tuba.cit.cornell.edu> NNTP-Posting-Host: goliath.vuse.vanderbilt.edu In article <4hrciu$94d@tuba.cit.cornell.edu> jmk3@crux4.cit.cornell.edu (Jay Krell) writes: >mattack@eskimo.com (Matt Ackeret) writes: > >> From what I recall, the small memory model uses smaller/faster pointer >>arithmetic code that never allows bank crossing. From discussion with >>Soenke in e-mail from his "ORCA/C mallocs ROM?" question, he "read the >>documentation again, and it quite clearly states that the large memory model >>gives you the capability to allocate dynamic memory >64k." > From the ORCA/C manual: The large memory model is the most flexible. When you use the large memory model, your program can have up to 64K bytes of global variables other than arrays, structures and unions. Arrays, structures and unions can be as large as memory will allow, and you can have as many of them as will fit in memory. In particular, arrays are not limited to 64K bytes, nor is the total space used by arrays limited to 64K bytes. Dynamically allocated memory can also exceed 64K for a single chunk of memory. When you use the small memory model, all global variables, including arrays, structures and unions, are limited to a single 64K byte area of memory. This area of memory is shared with any functions you use from the standard C library, and if you do not use the segment statement, with your program's code. In addition, the compiler assumes that you will not allocate any single array, structure or union that is larger than 64K bytes using the Memory Manager or malloc. This restriction applies to any single structure, not to the total amount of space in use; you can allocate arrays, structures and unions whose total space exceeds 64K. . . . . (Pages 260-1) -Tilghman