DICE - A "C" PROGRAMMING ENVIRONMENT   by Peter Thompson Ed: Check out also the review of DICE in MD25.  (( 27 )) (( 27 )) (( 27 )) (( 27 )) (( 27 )) (( 27 )) (( 27 )) (( 27 )) DICE: pl. n. A regular polyhedron with markings on each face used to obtain random results. vt. To partake in a game of chance or hazardous enterprise vt. (Cookery) to cut vegetables into small cubes. n. (Amiga) a C compiler written by Matt Dillon. DICE stands for Dillon's Integrated C Environment; i.e. a C compiler written by Matt Dillon, Amiga guru extraordinare. He is responsible for a lot of substantial Amiga software; e.g. the UUCP (Unix-to-Unix Copy Program) port, DNet (A program that allows you to network Amigas), the programmer's editor DME, the Mach III/AutoCLI style program DMouse, and a few other things of which I can't remember enough details to include in the review.  3 C Alternatives DICE is, as I have stated, a C compiler. If you have no idea of what C is (a programming language) and what a compiler is (a program that turns programs into executable code) then stop reading NOW, because you won't be interested. There are basically 3 alternatives if you want to obtain a C compiler on the Amiga: * Look through the Fred Fish lisitings for the latest version of the publicly distributable C compiler(s); then buy the Commodore includes and autodocs. How long it'll take: A day to set up the disk, and a couple of weeks to get the includes. Estimated cost: $25, $5 if you already have the Commodore includes and autodocs disks. What you get: A C compiler. * Go out and buy Lattice or Aztec C. How long it'll take: Depends on Australia Post if by mail order, or fifteen minutes if buying it direct. Cost: varies. Look it up at your local computer store or in the mail order adds, but I think it's a couple of hundred dollars. What you get: C compiler, bound manual, includes, documentation, global optimiser, and various utilities. * Register for DICE. How long it'll take: About 6 weeks, 4 of which are postal delays. Cost: US$50 for the registered version; Aus$3:50 or less for Fred Fish 491 with the publicly distributable version. What you get: C compiler : this is a unix-style compiler, not an integrated environment like Turbo C or the Lattice frontend; but it is possible to program DME to run it from within DME if you're that way inclined (I'm not). [Ed: See a tutorial on DME this issue.] However, Real C Programmers (TM) don't need an integrated environment; and the options available are manifold, including the usual compiler flags (don't compile to executable, executable name, define symbol, link with these files, etc) as well as more exotic ones (use precompiled header files, produce code to be stored in a ROM, profile, use register arguments to operating system calls, enforce prototyping, don't add startup/exit code, etc.). Includes (1.3 and 2.0) : The include files and libraries necessary to unleash the power of your Amiga are included for both version 1.3 and 2.0 of the operating system. Unfortunately, Matt Dillon does NOT have the license to include the Autodocs, so you have three choices; a) Get them from Commodore yourself. b) Pay $$$$ for the Commodore manuals; Exec, Libraries and devices, etc. c) Pay $$$$+ for the Abacus series. N.B. I've found that book #7 is the most helpful for an assembler programmer. On-disk documentation : no bound manual is included, but there is documentation for just about everything on the disks (see listing below). It includes most of the standard C functions, and nearly all of the various utilities, with the exception of A68k (a very good (and free) macro assembler. Profiling : Basically a tool for those who like their programs fast. Profiling produces a list of where your program spends the most time. * Library source : All the source to the C library. If you don't like the way Matt Dillon did a C standard function, you can change it... * LOTS of examples and source : see the listing below. * A hard disk/floppy disk installation program : Unpacks the distribution for you. * A severe memory shortage : DICE will run in 512K, but that requires you to store all temporaries on disk, have no portion of the compiler resident, and is as slow as a wet week. I have 1 Mb and two floppies, and I can compile ok, though it's a little slow; a friend (also a registered user (Hi, Tom!)) runs it on a 2.5Mb 1 floppy machine (don't ask ME why) by making the compiler resident. DICE is basically speed oriented. Part of the memory shortage (at least on my machine) arises because it reads all of any include file into RAM to speed access. This shows up in the compilation times, which on my machine are bound by floppy access times, which are.. um.. pitiful. Anyway, I haven't encountered any major bugs, and the price is right, so I like it. This is what I got with version 2.06.38, dated 23rd November 1991: 6,581,206 bytes of stuff, broken up into a huge number of files on 3 disks.  (( 27 )) (( 27 )) (( 27 )) (( 27 )) (( 27 )) (( 27 )) (( 27 )) (( 27 ))