home *** CD-ROM | disk | FTP | other *** search
- 31-Aug-93
-
- To fix the problem with Borland C compilers in large memory models
- do the following:
-
- 0. Install BULLET first (BULLET.LI_ installs to BULLET.LIB).
- 1. Create a new directory.
- 2. Make a copy of BULLET.LIB 1.07 and put it in the new directory.
- 3. Copy the replacement MEMCXB.OBJ module to the new directory.
- 4. Do C>tlib bullet.lib -memxb +memcxb
- 5. Do C>ren bullet.lib bullet_L.lib
-
- That's it. BULLET_L.LIB is created and should run as expected. The memcxb.obj is
- written for LARGE/HUGE memory models only. With a couple conditionals, MEDIUM
- could be used (I suppose) but it's not necessary in any case.
-
- The problem with Borland compilers is that they base their memory management
- on memory that isn't theirs, so whenever a DOS INT21/48 call is made, the
- Borland memory manager crashes. This patch routes BULLET DOS INT21/48/49 calls
- to the run-time's _malloc and _free. Only Borland compilers need use this patch.
-
- MEMCXB.ASM is included. Makes for easy programmer changes of this non-
- standard module (non-standard in that it requires a C runtime library).
-
- xb$SetHandleCount no longer is functional, sinc this makes a call to INT21/67
- which makes a call to INT21/48. You may be able to alter you C start-up source
- to work around this. If you call INITXB with IP.jftmode=1, error 1 is returned
- for invalid function.
-
- chh
-
- <EOF>
-