[net.micro.apple] applesoft compilers

rbh@stcvax.UUCP (Brent Haws) (10/03/84)

Has anyone used the TASC compiler V2.0 with anything other than
DOS 3.3, namely diversi-DOS, and had it work correctly?  I have
had some problems with this.  Does any one have experience with
other applesoft compilers.  If so, how do they compare.
How about a PRO-DOS compiler? I would like any info you might
have on the matter.  Thanks  Brent

-- 
Brent Haws  -  STC StorageTek (Disk Division)
uucp:	{ hao, ihnp4, decvax}!stcvax!rbh
	{ allegra, amd70, ucbvax }!nbires!stcvax!rbh
USnail:	Storage Technology Corp  -  MD 3T / Louisville, CO / 80028
DDD:	(303) 673-6750

binder@dosadi.DEC (10/08/84)

> Has anyone used the TASC compiler V2.0 with anything other than DOS 3.3,
> namely diversi-DOS, and had it work correctly?  I have had some problems
> with this.  Does any one have experience with other applesoft compilers.
> If so, how do they compare. How about a PRO-DOS compiler? I would like any
> info you might have on the matter.

> Brent Haws  -  STC StorageTek (Disk Division)

TASC is guaranteed not to work with Diversi-DOS because TASC modifies its DOS 
when it runs, and the hooks it alters are in the wrong places in Diversi-DOS.  
My own method is to use a standard TASC disk to compile and then copy the 
resultant file off onto a Diversi-DOS disk.  It occurs that TASC might 
POSSIBLY work with Pronto-DOS, which claims to have all internal hooks in the 
same places as DOS 3.3.  I haven't tried it because I don't like what I've 
seen of Pronto-DOS enough to buy a copy just to find out.

I am told that the Einstein Compiler is better than TASC, but I haven't been 
curious enough to blow the money on ANOTHER compiler.

As a matter of speculation, TASC should have no trouble producing executables 
that will run under Pro-DOS, if you go about things right.  Try this:

1.  Compile your programme normally with TASC.  Then use Diversi-DOS's PAD 
    command to find out how long the binary is.

2.  Recompile with the following address assignments:

    a.  Programme to begin at $1000, or immediately above hi-res screen if you
        use hi-res.
    b.  Library to begin immediately after programme binary, as determined by
        the length that PAD gave you.
    c.  Variables to begin immediately after library; library is just under
        $1000 long.

    Example:  for a programme that produced a binary $343A long, the addresses 
    I used were $1000, $4500, and $5500.

3.  Continuing with the address assignments from the above example, perform
    the following steps to save your file: 

    a.  BLOAD RUNTIME,A$4500
    b.  BLOAD PROGRAMME.OBJ,A$1000
    c.  BSAVE PROGRAMME.EXE,A$1000,L$4500

You now have a single BRUNnable binary file - transfer it to Pro-DOS and it 
ought to work.  Let me know if it does, as I haven't sprung for Pro-DOS yet.