[comp.sys.amiga] 512k internal mod

R5K@PSUVMA.BITNET (01/22/87)

No, I haven't tried it yet, but would like to know if anyone has,
and if it is compatable with all of the current software. I have
all of the information on it and the autoconfig mods to make it
autoconfig under 1.2 along with  pictures of the setup. But I'm
a bit shaky about trying it until I hear that there are no problems.

Randy Katz   PSUVMB

carolyn@cbmvax.UUCP (01/24/87)

In article <9797R5K@PSUVMA> R5K@PSUVMA.BITNET writes:
>No, I haven't tried it yet, but would like to know if anyone has,
>and if it is compatable with all of the current software. I have
>all of the information on it and the autoconfig mods to make it
>autoconfig under 1.2 along with  pictures of the setup. But I'm
>a bit shaky about trying it until I hear that there are no problems.

   If you're talking about one of the internal piggyback ram kits, I
hear they are inexpensive and work pretty well.

   But here are a few warnings:

1. You'll void your warranty.

2. Many 1.1 programs don't work properly if your system has ANY
   non-CHIP ram because they have bit images defined in their
   code which by default will be loaded into FAST ram if FAST
   ram is available. (many of these programs can be fixed with
   "fixhunk" which is available on a Fish disk)

3. Piggyback ram is not as fast as real external FAST ram.

4. I don't know what type of "autoconfig" your setup has.  Several
   developers have called me with problems caused by the software
   that unlinks the piggyback ram from the CHIP memory list.
   (at bootup the system sees it as CHIP mem).  A program called
   "Make512K" is run to take the memory OUT of the Chip memory
   list.  Then Addmem is used to add it to the FAST mem list.
   
   The version of Make512K that my developers had only adjusted
   the system's idea of TOTAL chip ram.  It did not search for
   the big chunk of chip mem which was still tagged as being
   512K bytes larger than it actually is.  So any system function
   that is MemChunk oriented (AllocMem, LoadSeg, etc.), still
   think there is a chunk of chip mem >512K bytes in size.
   And keeps allocating from it after the real chip mem is used
   up (-->GURU).

   Simple test for this problem is to run Avail after configuring
   the piggyback memory.  If your "Available" chip and fast are
   correct but your "Largest" chip chunk is way too large
   (like 512K too large) then you've got the problem.

   
   The following changes to Make512K should fix the problem.
   (This is theoretical of course, since I do not have piggyback ram)

----------------------------------------------------------------------
...
struct MemChunk *chunk;
...

(add these lines after "this_Mem_Hdr->mh_Free -= diff;")

/* Try to find the chunk that's too big */
for (chunk=this_Mem_Hdr->mh_First;
       (chunk)&&(chunk->mc_Bytes < 0x80000);
          chunk = chunk->mc_Next);
/* If we found it, fix it */
if(chunk)  chunk->mc_Bytes -= 0x80000;
...
----------------------------------------------------------------
   
-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Carolyn Scheppner -- CBM   >>Amiga Technical Support<<
                     UUCP  ...{allegra,caip,ihnp4,seismo}!cbmvax!carolyn 
                     PHONE 215-431-9180
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=