Commit 3e4e89ef authored by ASCP's avatar ASCP

smakefiles to build project with sas/c 6.5x, NDK 3.9. Added gitignore,...

smakefiles to build project with sas/c 6.5x, NDK 3.9. Added gitignore, gitkeep, typedefs.h, changelog. Corrected license headers for iff. See CHANGELOG.md
parent 4ee98a56
*.swp
*.tmp
*.o
*.uaem
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.0.1] - 2018-04-29
### Added
- New smakefiles. under v1.0 now builds with SAS C, 6.5x, with inspiration and help from work by Olaf Barthel (OB), Gilles Pelletier (GP)
- Added CHANGELOG.md
- Added .gitignore
- REXX.c Rewrite InitPort() and FreePort() to avoid to link with rexxglue.lib (GP)
- typedefs.h reconstructed (OB, GP)
### Changed
- Project now builds with NDK 3.9
- Information that a few of the files in the IFF module is public domain and not GPL.
- Added build instructions to README.md and designworks_src.readme
- \_Main.c extern struct UFB \_ufbs[] -> struct UFB \_ufbs[3] (GP)
- Icon.c MTYPE_APPICON must be changed into AMTYPE_APPICON. MTYPE_APPMENUITEM into AMTYPE_APPMENUITEM (GP)
### Removed
- Old original custom buildfiles, using lattice c
......@@ -11,6 +11,9 @@ version 2 or later. See the COPYING file for details.
All files part of DesignWorks has
Copyright (C) 1996-2018 Canux Corporation
DesignWorks is also using a few files under the IFF-module that are public
domain. See the file headers.
Notes
======
This is part of a batch of releases from Canux Corporation.
......@@ -39,6 +42,19 @@ won the auction for WCi’s IP sometime after that. We did not do any
more Amiga development afterwards but some of our software was featured
in Amiga magazines at the time and we continued to build and sell our hardware products."
Build
=======
Project builds with SAS/C 6.5x and the original SAS/6 includes replaced with official includes NDK 3.9
In order to build "DesignWorks", enter the v1.0 dir and enter the following
commands in the shell:
smake
The binary should be available as src/build/DesignWorks.
Note: Project is not compatible with rtg.library (Picasso etc.)
HELP US
===========
......
......@@ -18,6 +18,9 @@ version 2 or later. See the COPYING file for details.
All files part of DesignWorks has
Copyright (C) 1996-2018 Canux Corporation
DesignWorks is also using a few files under the IFF-module that are public
domain. See the file headers.
Notes
======
This is part of a batch of releases from Canux Corporation.
......@@ -46,6 +49,20 @@ won the auction for WCi’s IP sometime after that. We did not do any
more Amiga development afterwards but some of our software was featured
in Amiga magazines at the time and we continued to build and sell our hardware products."
Build
=======
Project builds with SAS/C 6.5x and the original SAS/6 includes replaced with official includes NDK 3.9
In order to build "DesignWorks", enter the v1.0 dir and enter the following
commands in the shell:
smake
The binary should be available as src/build/DesignWorks.
Note: Project is not compatible with rtg.library (Picasso etc.)
HELP US
===========
......
......@@ -200,7 +200,7 @@ typedef struct {
UBYTE Compression;
UBYTE pad1;
UWORD Width, Height; /* Cannot have fractional size bitmap */
/* RGBColor Data[Width*Height]; /* Or less, if compressed */
/* RGBColor Data[Width*Height] Or less, if compressed */
} BitMapInfo;
/*
......@@ -244,7 +244,7 @@ typedef struct {
UBYTE Style, MiscStyle;
UBYTE Justify, Spacing;
UBYTE FixHeight, Leading;
/* TextChar Text[]; /* Not NULL terminated */
/* TextChar Text[] Not NULL terminated */
} TextInfo;
/*
......@@ -276,7 +276,7 @@ typedef struct {
typedef struct {
WORD NumPoints;
/* FixPoint Points[NumPoints]; /* List of points in polygon */
/* FixPoint Points[NumPoints] List of points in polygon */
} PolyPath;
typedef struct {
......@@ -289,7 +289,7 @@ typedef struct {
FillPatNum FillPatNum;
FixRect Frame;
WORD NumPaths;
/* PolyPath Paths[NumPaths]; /* Merged polygons */
/* PolyPath Paths[NumPaths] Merged polygons */
} PolyInfo;
/*
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
/*
/*
* GIO.C Generic I/O Speed Up Package 1/23/86
* See GIOCall.C for an example of usage.
* Read not speeded-up yet. Only one Write file buffered at a time.
......@@ -25,11 +7,12 @@
*
* By Jerry Morrison and Steve Shaw, Electronic Arts.
* Modified by James Bayless, New Horizons Software
* This software is in the public domain.
*
* This version for the Commodore-Amiga computer.
*/
#include <IFF/GIO.h> /* See comments here for explanation.*/
#include "GIO.h" /* See comments here for explanation.*/
#include <proto/dos.h>
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
#ifndef IFF_GIO_H
#define IFF_GIO_H
......@@ -34,6 +16,8 @@
* By Jerry Morrison and Steve Shaw, Electronic Arts.
* Modified by James Bayless, New Horizons Software
*
* This software is in the public domain.
*
* This version for the Commodore-Amiga computer.
*/
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
#ifndef IFF_IFF_H
#define IFF_IFF_H
......@@ -24,7 +6,8 @@
*
* By Jerry Morrison and Steve Shaw, Electronic Arts
* Modified by James Bayless, New Horizons Software
*/
* This software is in the public domain.
*/
#ifndef EXEC_TYPES_H
#include "exec/types.h"
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
/*
* IFFR.C Support routines for reading IFF-85 files 1/23/86
* (IFF is Interchange Format File)
*
* By Jerry Morrison and Steve Shaw, Electronic Arts
* Modified by James Bayless, New Horizons Software
*
* This software is in the public domain.
*
* This version for the Commodore-Amiga computer
*/
#include <IFF/IFF.h>
#include <IFF/GIO.h>
#include "IFF.h"
#include "GIO.h"
#include <proto/dos.h>
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
/*
* IFFW.C Support routines for writing IFF-85 files 1/23/86
*
* By Jerry Morrison and Steve Shaw, Electronic Arts
* Modified by James Bayless, New Horizons Software
*
* This software is in the public domain.
*
* This version for the Commodore-Amiga computer
*/
......@@ -28,8 +12,8 @@
#include <exec/types.h>
#include <libraries/dos.h>
#include <IFF/IFF.h>
#include <IFF/GIO.h>
#include "IFF.h"
#include "GIO.h"
#include <proto/dos.h>
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
#ifndef IFF_ILBM_H
#define IFF_ILBM_H
......@@ -25,6 +7,8 @@
* By Jerry Morrison and Steve Shaw, Electronic Arts
* Modified by James Bayless, New Horizons Software
*
* This software is in the public domain.
*
* This version for the Commodore-Amiga computer
*/
......@@ -36,7 +20,7 @@
#include <graphics/gfx.h>
#endif
#include <IFF/IFF.h>
#include "IFF.h"
#define ID_ILBM MakeID('I','L','B','M')
#define ID_BMHD MakeID('B','M','H','D')
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
/*
* ILBMR.C Support routines for reading ILBM files 11/27/85
* (IFF is Interchange Format File)
......@@ -23,11 +5,13 @@
* By Jerry Morrison and Steve Shaw, Electronic Arts
* Modified by James Bayless, New Horizons Software
*
* This software is in the public domain.
*
* This version for the Commodore-Amiga computer
*/
#include <IFF/ILBM.h>
#include <IFF/Packer.h>
#include "ILBM.h"
#include "Packer.h"
#include <string.h>
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
/*
* ILBMW.c Support routines for reading ILBM files 1/23/86
* (IFF is Interchange Format File)
......@@ -23,13 +5,15 @@
* By Jerry Morrison and Steve Shaw, Electronic Arts
* Modified by James Bayless, New Horizons Software
*
* This software is in the public domain.
*
* This version for the Commodore-Amiga computer
*/
#include <exec/types.h>
#include <IFF/ILBM.h>
#include <IFF/Packer.h>
#include "ILBM.h"
#include "Packer.h"
/*
* InitBMHdr
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
/*
* Packer.c Convert data to/from cmpByteRun1 run compression 11/15/85
*
......@@ -27,12 +9,14 @@
* [-1..-127] : followed by byte to be repeated (-n)+1 times
* -128 : NOOP
*
* This software is in the public domain.
*
* This version for the Commodore-Amiga computer
*/
#include <exec/types.h>
#include <IFF/Packer.h>
#include "Packer.h"
/*
* Local definitions and prototypes
......
/*
* This file is part of DesignWorks.
* Copyright (C) 1996-2018 Canux Corporation
*
* DesignWorks is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* DesignWorks is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with DesignWorks. If not, see <http://www.gnu.org/licenses/>.
*
*/
/*
* Packer.h typedefs for Data-Compresser 11/11/85
*
......@@ -25,6 +7,8 @@
* By Jerry Morrison and Steve Shaw, Electronic Arts
* Modified by James Bayless, New Horizons Sofware
*
* This software is in the public domain.
*
* This version for the Commodore-Amiga computer
*/
......
#
# :ts=2
#
BUILD_DIR = build
###############################################################################
.c.o:
sc $(CFLAGS) OBJNAME $@ $<
###############################################################################
#OPTIMIZE = optimize opttime optinline optschedule
#CPU = 060
CPU = any
DEBUG = line
#DEBUG = symbolflush noopt define=DEBUG
###############################################################################
CFLAGS = idlen=64 comnest streq strmerge nostkchk \
$(OPTIMIZE) cpu=$(CPU) debug=$(DEBUG) \
strsect=code idir=/iff idir=/
LFLAGS = smallcode smalldata noicons batch
###############################################################################
OBJS = \
$(BUILD_DIR)/GIO.o $(BUILD_DIR)/IFFR.o $(BUILD_DIR)/IFFW.o \
$(BUILD_DIR)/ILBMR.o $(BUILD_DIR)/ILBMW.o $(BUILD_DIR)/Packer.o
###############################################################################
all: \
$(BUILD_DIR)/iff.lib
$(BUILD_DIR)/iff.lib : $(OBJS)
oml $@ $(OBJS)
##############################################################################
$(BUILD_DIR)/GIO.o : GIO.c
$(BUILD_DIR)/IFFR.o : IFFR.c
$(BUILD_DIR)/IFFW.o : IFFW.c
$(BUILD_DIR)/ILBMR.o : ILBMR.c
$(BUILD_DIR)/ILBMW.o : ILBMW.c
$(BUILD_DIR)/Packer.o: Packer.c
###############################################################################
clean:
-delete $(BUILD_DIR)/*.o $(BUILD_DIR)/iff.lib
###############################################################################
#
# :ts=8
#
DESIGNWORKS = \
src/build/DesignWorks
###############################################################################
all: iff/build/iff.lib toolbox/build/toolbox.lib $(DESIGNWORKS)
###############################################################################
iff/build/iff.lib:
execute <<
cd iff
smake
<
###############################################################################
toolbox/build/toolbox.lib:
execute <<
cd toolbox
smake
<
###############################################################################
src/build/DesignWorks:
execute <<
cd src
smake
<
###############################################################################
clean:
execute <<
cd src
smake clean
<
execute <<
cd toolbox
smake clean
<
execute <<
cd iff
smake clean
<
......@@ -253,7 +253,7 @@ void DoAppMsg(struct AppMessage *appMsg)
Dir dir;
struct WBArg *wbArgList;
if (appMsg->am_Type == MTYPE_APPICON || appMsg->am_Type == MTYPE_APPMENUITEM) {
if (appMsg->am_Type == AMTYPE_APPICON || appMsg->am_Type == AMTYPE_APPMENUITEM) {
/*
Bring screen to front and activate most recently openned window
*/
......
......@@ -36,6 +36,7 @@
#include "Draw.h"
#include "Proto.h"
/*
* External variables
*/
......
.Key option
Echo "*NLinking DesignWorks*N"
If Not Exists RAM:Object
MakeDir RAM:Object
Copy /Object to RAM:Object quiet
EndIf
Assign Object: RAM:Object
If <option> EQ "debug"
BLink with DesignWorks.Link to /DesignWorks AddSym SmallCode SmallData
else
BLink with DesignWorks.Link to /DesignWorks NoDebug SmallCode SmallData
EndIf
.Key optimize
Echo "*NBuilding DesignWorks*N"
Delete /Object/#? quiet
If Exists RAM:Object
Delete RAM:Object/#? all quiet
Else
MakeDir RAM:Object
EndIf
Assign Object: RAM:Object
If <optimize> EQ "opt"
LC -v -cfs -O -o/Object/ #?.c
Else
LC -v -cfs -o/Object/ #?.c
EndIf
Copy /Object To RAM:Object quiet
BLink With DesignWorks.Link To /DesignWorks NoDebug SmallCode SmallData
If <optimize> EQ "opt"
LC -v -cfs -O -oRAM:Object/ -dDEMO Title Project
BLink With DesignWorks.Link To /DesignWorks.DEMO NoDebug SmallCode SmallData
EndIf
Assign Object:
Delete RAM:Object all quiet
This diff is collapsed.
......@@ -25,7 +25,7 @@
#include <exec/types.h>
#include <TypeDefs.h>
#include <Toolbox/TypeDefs.h>
#include "Version.h"
......
......@@ -96,9 +96,9 @@ static struct Hook backFillHook, docBackFillHook;
* Local prototypes
*/
void __saveds __asm BackFill(register struct Hook *, register RastPtr, register BFMsgPtr);
void __saveds __asm DocBackFill(register struct Hook *, register RastPtr, register BFMsgPtr);
/*#void __saveds __asm BackFill(register struct Hook *, register RastPtr, register BFMsgPtr);
#void __saveds __asm DocBackFill(register struct Hook *, register RastPtr, register BFMsgPtr);
*/
void ClearBackWindow(RastPtr, Rectangle *);
void RefreshWindow(WindowPtr);
......
......@@ -40,8 +40,8 @@
#define MAXARG 32 /* Maximum command line arguments */
#define QUOTE '"'
extern struct UFB _ufbs[];
extern int _fmode;
struct UFB _ufbs[3];
int _fmode;
extern struct WBStartup *WBenchMsg;
......
#
# :ts=4
#
#
BUILD_DIR = build
.c.o:
sc $(CFLAGS) OBJNAME $@ $<
###############################################################################
#OPTIMIZE = optimize opttime optinline optschedule
#CPU = 060
CPU = any
DEBUG = line
#DEBUG = symbolflush noopt define=DEBUG
###############################################################################
CFLAGS = idlen=64 comnest streq strmerge nostkchk \
$(OPTIMIZE) cpu=$(CPU) debug=$(DEBUG) \
strsect=code idir=/toolbox idir=/iff idir=/
LFLAGS = smallcode smalldata noicons batch
###############################################################################
OBJS = \
$(BUILD_DIR)/_Main.o $(BUILD_DIR)/Main.o $(BUILD_DIR)/Monitor.o $(BUILD_DIR)/Init.o $(BUILD_DIR)/Prefs.o $(BUILD_DIR)/Menu.o $(BUILD_DIR)/Project.o $(BUILD_DIR)/Edit.o $(BUILD_DIR)/Layout.o $(BUILD_DIR)/Arrange.o $(BUILD_DIR)/Pen.o \
$(BUILD_DIR)/TextMenu.o $(BUILD_DIR)/View.o $(BUILD_DIR)/REXX.o $(BUILD_DIR)/Tool.o $(BUILD_DIR)/Options.o $(BUILD_DIR)/Mouse.o $(BUILD_DIR)/Hilite.o $(BUILD_DIR)/Screen.o $(BUILD_DIR)/Window.o $(BUILD_DIR)/Gadget.o \
$(BUILD_DIR)/Display.o $(BUILD_DIR)/Ruler.o $(BUILD_DIR)/Layer.o $(BUILD_DIR)/Object.o $(BUILD_DIR)/Group.o $(BUILD_DIR)/Line.o $(BUILD_DIR)/Rect.o $(BUILD_DIR)/Oval.o $(BUILD_DIR)/Poly.o $(BUILD_DIR)/Text.o $(BUILD_DIR)/BMap.o \
$(BUILD_DIR)/Graphics.o $(BUILD_DIR)/Load.o $(BUILD_DIR)/Save.o $(BUILD_DIR)/Icon.o $(BUILD_DIR)/PrHandler.o $(BUILD_DIR)/Print.o $(BUILD_DIR)/Font.o $(BUILD_DIR)/Pattern.o $(BUILD_DIR)/Clipboard.o $(BUILD_DIR)/Error.o \
$(BUILD_DIR)/Misc.o $(BUILD_DIR)/Title.o $(BUILD_DIR)/Variables.o $(BUILD_DIR)/Strings.o $(BUILD_DIR)/PatDefs.o $(BUILD_DIR)/WindDefs.o $(BUILD_DIR)/DlogDefs.o $(BUILD_DIR)/MenuDefs.o
LIBS = /iff/build/iff.lib /toolbox/build/toolbox.lib LIB:sc.lib LIB:amiga.lib
###############################################################################
all: $(BUILD_DIR)/DesignWorks
$(BUILD_DIR)/DesignWorks : $(OBJS)
echo >$(BUILD_DIR)/designworks.lnk "ROOT"
echo >>$(BUILD_DIR)/designworks.lnk " LIB:c.o"
echo >>$(BUILD_DIR)/designworks.lnk " $(BUILD_DIR)/_Main.o $(BUILD_DIR)/Main.o $(BUILD_DIR)/Monitor.o"
echo >>$(BUILD_DIR)/designworks.lnk " $(BUILD_DIR)/Init.o $(BUILD_DIR)/Prefs.o $(BUILD_DIR)/Menu.o"
echo >>$(BUILD_DIR)/designworks.lnk " $(BUILD_DIR)/Project.o $(BUILD_DIR)/Edit.o $(BUILD_DIR)/Layout.o"
echo >>$(BUILD_DIR)/designworks.lnk " $(BUILD_DIR)/Arrange.o $(BUILD_DIR)/Pen.o $(BUILD_DIR)/TextMenu.o"