[Coco] Programs larger than 32K?

Arthur Flexser flexser at fiu.edu
Sun Jan 20 03:02:14 EST 2019


(I meant to say you get an extra 6K, not 8K, for each graphics page your
reallocate to program memory by decreasing the PCLEAR argument by one, at
the cost of decreasing what's available for graphics.)

Art

On Sat, Jan 19, 2019 at 8:04 PM Arthur Flexser <flexser at fiu.edu> wrote:

> Maybe the program below, which I wrote in 1984 and ran across a copy of,
> can do the trick for you?  It doesn't use the all-RAM mode, but gives you
> some extra memory by freeing up the area used by disk Basic to give you
> memory equivalent to what you'd have with a cassette-only system, freeing
> up an extra 2K or so.
>
> In general, going to the all-RAM mode will not give you any extra memory
> that Basic can make use of in a CoCo 1/2  Special tricks are needed to use
> the all-RAM mode to get extra memory under Basic.
>
> I believe there were some commercial programs for the CoCo 1/2 that might
> accomplish what you want and which might be in the archives, but I don't
> know the names of them.  I think the one Curtis referred to was called
> KEY264K.  I think there was a program that moved a RAM copy of the ROMs
> higher up in memory to allow Basic extra memory, resembling a mode that the
> Dragon computers used.  There were definitely programs for the CoCo 3 to
> allow Basic to make use of that computer's extra memory from Basic, like
> Big Basic from Danosoft, but you're using a CoCo 2.
>
> You get an extra 8K for each amount you decrease the PCLEAR value by from
> its default value of 4.
> If you don't need any memory for graphics, use the poke to allow PCLEAR
> 0.  Try PCLEAR 1 or, if needed, PCLEAR 0 to see if Basic will then have
> enough memory to load in the program.
>
> Art
>
> 10 'THIS LOADER PROGRAM WILL ENABLE DISK USERS TO RUN EXTENDED BASIC
> GRAPHICS PROGRAMS
> 20 'THAT ARE ORDINARILY TOO LARGE TO BE RUN ON A DISK SYSTEM.
> 30 'THIS IS ACCOMPLISHED BY HAVING GRAPHICS MEMORY START AT $600,
> 40 'AS IN EXTENDED BASIC, RATHER THAN AT $E00, SO THAT MEMORY AVAILABLE TO
> BASIC IS THE SAME AS WITHOUT DISK.
> 50 'TO USE, JUST SUBSTITUTE THE NAME OF YOUR PROGRAM FOR "PROGNAME" IN THE
> NEXT TO LAST LINE.
> 60 'YOU MAY ALSO NEED TO CHANGE THE PCLEAR VALUE IN THE LAST LINE (MINIMUM
> OF PCLEAR 2 REQUIRED).
> 70 'YOU SHOULD ADD THE STATEMENT POKE&HFF40,0 TO THE START OF YOUR
> 80 'GRAPHICS PROGRAM, SO THAT THE DISK MOTOR WILL SHUT OFF.
> 90 'THIS LOADER WILL LEAVE THE COMPUTER IN A *VERY ABNORMAL* STATE
> 100 'ONCE ANY GRAPHICS HAVE BEEN DRAWN--BE SURE TO COLD START
> 110 'BEFORE ANY FURTHER DISK OPERATIONS ARE ATTEMPTED.
> 120 '
> 130 'ART FLEXSER [72355,407]      MIAMI       JULY 1984
> 140 '
> 150 GOTO310
> 160 CLS:PRINT at 104, "***IMPORTANT!***"
> 170 PRINT: PRINTTAB(5)"AFTER RUNNING PROGRAM,"
> 180 PRINTTAB(6)"PRESS RESET TO COLD"
> 190 PRINTTAB(6)"START MACHINE BEFORE"
> 200 PRINTTAB(6)"ATTEMPTING ANY DISK"
> 210 PRINTTAB(5)"OPERATIONS, OR DAMAGE"
> 220 PRINTTAB(6)"TO FILES MAY RESULT!"
> 230 POKE&HFF03,&H34: POKE&H10D,&H89:POKE&H10E,&H4C: POKE&HFF03, &H35
> 'EXTENDED BASIC IRQ SERVICING ONLY
> 240 POKE&HB0,1:POKE&HB1,&H3F 'MOVE USR VECTORS TO $13F
> 250 'CHANGE 3 HOOKS TO EXTENDED BASIC VALUES
> 260 POKE&H18B,57:POKE396,136:P0KE397,70:POKE395,126 'EXPRESSION EVAL
> 270 POKE&H173,H39 'CLOSE FILE
> 280 POKE&H192,&H88:POKE&H193,&HF0 'ERROR DRIVER
> 290 POKE&H71,0 'COLD START ON RESET
> 300 RUN "PROGNAME"
> 310 POKE&HBC,6:PMODE0:PCLEAR4:GOTO160 'SET START OF GRAPHICS TO $600
>
>
> On Sat, Jan 19, 2019 at 5:46 PM Evan Wright via Coco <coco at maltedmedia.com>
> wrote:
>
>> Apologies for the second plea for help....
>> Is there a way to load a program BASIC that is more than 32K?   (I have
>> a  program that is too large to fit into the  CoCo 2 when it's not in
>> all-RAM mode)
>> If put the machine in all-RAM mode from BASIC the machine crashes (which
>> is kind of expected). But,  I can't have the program put the machine in all
>> RAM mode, because I can't get it loaded in the first place (the CMOC
>> nobasic example).
>> Do people have a main segment that is less than 32k, which puts the CoCo
>> in all-RAM mode, then load the remaining data from separate files?
>> Evan
>>
>>
>> --
>> Coco mailing list
>> Coco at maltedmedia.com
>> https://pairlist5.pair.net/mailman/listinfo/coco
>>
>


More information about the Coco mailing list