
DeluxePaint/DPaint original Amiga source code (1986) - Hates_
https://github.com/DutchmanDavid/DeluxePaint
======
silversconfused
Doesn't seem to want to build against NDK 3.9 with gcc 4.7, but it was fun to
try.

~~~
obarthel
If you want to try (and I would recommend trying, since even this early
version of the program is an amazing design, with much to learn from), please
be aware of the following:

1) The source code is incomplete; you will need the original EA IFF 1986
(March) files to fill in the gaps. You will also need to find a replacement
for the LFMULT() function.

2) The paths to the header files will need editing.

3) The original program was built using the Lattice 'C' compiler, and it uses
a couple of library functions which are specific to that compiler, such as
stscmp(), stcu_d(), setmem() and movmem() for which you will need to provide
replacements.

4) You may want to replace the BootIT() function with a stub, which originally
seems to have been part of the disk copy protection scheme.

This should get you started. Once you get the program running, watch out how
you use it:

As was common in these days, string buffers are rather short (e.g. 20
characters for a file or drawer name, 30 characters for font names) and the
code is oblivious to this limitation, easily leading to buffer overflows and
crashes.

Also, the hardware acceleration which Deluxe Paint uses is not properly
secured by calling OwnBlit()/WaitBlit()/DisownBlit() in the proper sequence at
all times (some are correct, some are not, and the code shows that the
developers struggled with mitigating the ugly side-effects of not getting it
right). This will cause the image processing functions to glitch and corrupt
memory. Apparently, this happened only rarely in 1986 because the Amiga system
was "slow enough" so that writing to the Blitter registers while it was still
running didn't always lead to things going awry.

------
gbraad
gone?

~~~
gbraad
as per [https://www.computerhistory.org/atchm/electronic-arts-
deluxe...](https://www.computerhistory.org/atchm/electronic-arts-deluxepaint-
early-source-code/)

> and does not give you the right to license it to third parties by posting
> copies elsewhere on the web.

