Add some missing files

This commit is contained in:
Jeremy Rand 2017-06-30 23:56:06 -04:00
parent 3c8af29482
commit 7c47c7b000
5 changed files with 508 additions and 0 deletions

50
make/orca-macgen Executable file
View File

@ -0,0 +1,50 @@
#!/bin/bash
TMPFILE=/tmp/orca-macgen.$$
MACGENFLAGS="$1"
FILENAME="$2"
shift
shift
if echo $FILENAME | grep -v '\.s$' > /dev/null
then
echo Expected second argument to be a *.s file but got $FILENAME
exit 1
fi
BASENAME=`echo $FILENAME | sed 's/\.s$//'`
MACROSNAME="${BASENAME}.macros"
DEPSNAME="${MACROSNAME}.d"
$ORCA --trace-gsos macgen $MACGENFLAGS "$FILENAME" $* < /dev/null 2> $TMPFILE
RESULT=$?
sed '/^[A-Za-z][A-Za-z]*(.*)$/d' $TMPFILE >&2
if [ "$RESULT" -ne 0 ]
then
rm -f $TMPFILE
rm -f $MACROSNAME
exit $RESULT
fi
DEPS=`awk '
/^FastFileLoad/ {
sub(/^FastFileLoad\(/, "");
sub(/\)$/, "");
print}' $TMPFILE | sort -u | while read FILE
do
if [ -f "$FILE" ]
then
echo $FILE
fi
done | tr '\012' ' '`
rm -f $TMPFILE
cat > $DEPSNAME << EOF
$MACROSNAME: $DEPS
EOF
exit 0

View File

@ -0,0 +1,132 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Nodes</key>
<array>
<string>main.c</string>
<string>main.h</string>
<string>main.rez</string>
<string>Makefile</string>
<string>make/head.mk</string>
<string>make/orca-asm</string>
<string>make/orca-cc</string>
<string>make/orca-macgen</string>
<string>make/orca-rez</string>
<string>make/tail.mk</string>
</array>
<key>Definitions</key>
<dict>
<key>main.c</key>
<dict>
<key>Path</key>
<string>main.c</string>
</dict>
<key>main.h</key>
<dict>
<key>Path</key>
<string>main.h</string>
</dict>
<key>main.rez</key>
<dict>
<key>Path</key>
<string>main.rez</string>
</dict>
<key>make/head.mk</key>
<dict>
<key>Group</key>
<string>make</string>
<key>Path</key>
<string>make/head.mk</string>
</dict>
<key>make/orca-asm</key>
<dict>
<key>Group</key>
<string>make</string>
<key>Path</key>
<string>make/orca-asm</string>
</dict>
<key>make/orca-cc</key>
<dict>
<key>Group</key>
<string>make</string>
<key>Path</key>
<string>make/orca-cc</string>
</dict>
<key>make/orca-macgen</key>
<dict>
<key>Group</key>
<string>make</string>
<key>Path</key>
<string>make/orca-macgen</string>
</dict>
<key>make/orca-rez</key>
<dict>
<key>Group</key>
<string>make</string>
<key>Path</key>
<string>make/orca-rez</string>
</dict>
<key>make/tail.mk</key>
<dict>
<key>Group</key>
<string>make</string>
<key>Path</key>
<string>make/tail.mk</string>
</dict>
<key>Makefile</key>
<dict>
<key>Path</key>
<string>Makefile</string>
</dict>
</dict>
<key>Kind</key>
<string>Xcode.Xcode3.ProjectTemplateUnitKind</string>
<key>Identifier</key>
<string>com.halcyontouch.apple2gsCCDev</string>
<key>Ancestors</key>
<array>
<string>com.apple.dt.unit.externalBuildSystem</string>
</array>
<key>Concrete</key>
<true/>
<key>Description</key>
<string>This template creates an Apple IIgs C code project to build a control panel. The project starts with a single C file which you can modify. You can also add more assembly or C files as you may like.</string>
<key>Options</key>
<array/>
<key>Targets</key>
<array>
<dict>
<key>TargetType</key>
<string>Legacy</string>
<key>TargetIdentifier</key>
<string>com.apple.dt.cocoaLegacyTarget</string>
<key>BuildToolPath</key>
<string>___VARIABLE_buildToolPath___</string>
<key>BuildToolArgsString</key>
<string>-C ___PACKAGENAME___ $(ACTION)</string>
<key>SharedSettings</key>
<dict>
<key>OTHER_CFLAGS</key>
<string></string>
<key>OTHER_LDFLAGS</key>
<string></string>
</dict>
<key>Configurations</key>
<dict>
<key>Debug</key>
<dict>
<key>DEBUGGING_SYMBOLS</key>
<string>YES</string>
<key>GCC_GENERATE_DEBUGGING_SYMBOLS</key>
<string>YES</string>
<key>GCC_OPTIMIZATION_LEVEL</key>
<string>0</string>
</dict>
<key>Release</key>
<dict/>
</dict>
</dict>
</array>
</dict>
</plist>

View File

@ -0,0 +1,177 @@
/*
* ___FILENAME___
* ___PACKAGENAME___
*
* Created by ___FULLUSERNAME___ on ___DATE___.
* Copyright (c) ___YEAR___ ___ORGANIZATIONNAME___. All rights reserved.
*
*/
#pragma cdev entry
#include <types.h>
#include <desk.h>
#include <control.h>
#include <quickdraw.h>
#include "main.h"
/* CDev Message Numbers
* (Why aren't these in an include file somewhere?)
* Check out FTN.C7.XXXX in the file type tech notes for
* more information about CDevs.
*/
#define machineCDev 1
#define bootCDev 2
#define reservedCDev 3
#define initCDev 4
#define closeCDev 5
#define eventsCDev 6
#define createCDev 7
#define aboutCDev 8
#define rectCDev 9
#define hitCDev 10
#define runCDev 11
#define editCDev 12
long doMachine(void)
{
/* Return non-zero if you cannot be opened on this machine
* (and maybe display an alert explaining why).
*/
return 1;
}
void doBoot(int *flag)
{
/* Set bit 0 to 1 in flag if you want to draw at X through
* the icon at boot time to indicate that this CDev will not
* load.
*/
#if 0
/* Enable this line to set bit 0 to 1. */
*flag |= 1;
#endif
}
void doInit(GrafPortPtr windowPtr)
{
}
void doClose(GrafPortPtr windowPtr)
{
}
void doEvents(GrafPortPtr windowPtr, EventRecord *eventPtr)
{
}
void doAbout(GrafPortPtr windowPtr)
{
NewControl2(windowPtr, resourceToResource, HELP_RESOURCE);
}
void doCreate(GrafPortPtr windowPtr)
{
NewControl2(windowPtr, resourceToResource, MAIN_RESOURCE);
}
void doRect(Rect *rectPtr)
{
}
void doHit(Handle controlHandle, long controlID)
{
}
void doRun(GrafPortPtr windowPtr)
{
}
void doEdit(GrafPortPtr windowPtr, int action)
{
switch (action) {
case undoAction:
break;
case cutAction:
break;
case copyAction:
break;
case pasteAction:
break;
case clearAction:
break;
}
}
long entry(long data2, long data1, int message)
{
GrafPortPtr windowPtr = (void *) data1;
switch (message) {
case machineCDev:
return doMachine();
case bootCDev:
doBoot((int *)data1);
break;
case initCDev:
doInit((GrafPortPtr)data1);
break;
case closeCDev:
doClose((GrafPortPtr)data1);
break;
case eventsCDev:
doEvents((GrafPortPtr)data2, (EventRecord *)data1);
break;
case createCDev:
doCreate((GrafPortPtr)data1);
break;
case aboutCDev:
doAbout((GrafPortPtr)data1);
break;
case rectCDev:
doRect((Rect *)data1);
break;
case hitCDev:
doHit((Handle)data1, data2);
break;
case runCDev:
doRun((GrafPortPtr)data1);
break;
case editCDev:
doEdit((GrafPortPtr)data2, (int)(data1 & 0xffff));
break;
}
return 1;
}

View File

@ -0,0 +1,19 @@
/*
* ___FILENAME___
* ___PACKAGENAME___
*
* Created by ___FULLUSERNAME___ on ___DATE___.
* Copyright (c) ___YEAR___ ___ORGANIZATIONNAME___. All rights reserved.
*
*/
#ifndef _____PROJECTNAMEASIDENTIFIER________FILEBASENAMEASIDENTIFIER_____
#define _____PROJECTNAMEASIDENTIFIER________FILEBASENAMEASIDENTIFIER_____
#define CDEV_RESOURCE 0x1
#define MAIN_RESOURCE 0x100
#define HELP_RESOURCE 0x101
#endif /* defined(_____PROJECTNAMEASIDENTIFIER________FILEBASENAMEASIDENTIFIER_____) */

View File

@ -0,0 +1,130 @@
/*
* ___FILENAME___
* ___PROJECTNAME___
*
* Created by ___FULLUSERNAME___ on ___DATE___.
* ___COPYRIGHT___
*/
#include "types.rez"
#include "___FILEBASENAME___.h"
/* This is the required resource to tell the control panel about the CDev */
resource rCDEVFlags (CDEV_RESOURCE) {
0x00C0, /* This sets the wantCreate and wantAbout bits */
/* Set more bits if you want other messages */
1,
1,
1,
0,
{0, 0, 110, 200},
"___PROJECTNAME___",
"___FULLUSERNAME___",
"1.0"
};
/* Code resource; the executable part of the CDev */
read rCDevCode (CDEV_RESOURCE,convert) "___PROJECTNAME___.bin";
/* This is the icon displayed by the control panel */
resource rIcon (CDEV_RESOURCE) {
0x8000, /* color icon */
20, /* height in pixels */
28, /* width in pixels */
$"FFFFFFFFFFFFFFFFFFFFFFFFFFFF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FF888888888888888888888888FF"
$"FFFFFFFFFFFFFFFFFFFFFFFFFFFF",
$"0000000000000000000000000000"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"00FFFFFFFFFFFFFFFFFFFFFFFF00"
$"0000000000000000000000000000"
};
/* The following resources define the various controls in the main display */
resource rControlList (MAIN_RESOURCE) {
{
MAIN_RESOURCE,
};
};
resource rControlTemplate (MAIN_RESOURCE) {
0x00000001, /* control id */
{38,5,49,205}, /* control rectangle */
statTextControl {{ /* control type */
0x0000, /* flags */
0x1002, /* more flags */
0, /* ref con */
MAIN_RESOURCE, /* text reference */
13 /* text length */
}};
};
resource rTextForLETextBox2 (MAIN_RESOURCE) {
"Hello, world!"
};
/* The following resources define the controls for the help screen */
resource rControlList (HELP_RESOURCE) {
{
HELP_RESOURCE,
};
};
resource rControlTemplate (HELP_RESOURCE) {
0x00000002, /* control id */
{38,5,49,205}, /* control rectangle */
statTextControl {{ /* control type */
0x0000, /* flags */
0x1002, /* more flags */
0, /* ref con */
HELP_RESOURCE, /* text reference */
19 /* text length */
}};
};
resource rTextForLETextBox2 (HELP_RESOURCE) {
"Put help info here."
};