mirror of
https://github.com/jeremysrand/Apple2GSBuildPipeline.git
synced 2024-11-29 16:49:24 +00:00
Add some missing files
This commit is contained in:
parent
3c8af29482
commit
7c47c7b000
50
make/orca-macgen
Executable file
50
make/orca-macgen
Executable 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
|
132
pkg/Templates/Apple IIgs/Control Panel in C.xctemplate/TemplateInfo.plist
vendored
Normal file
132
pkg/Templates/Apple IIgs/Control Panel in C.xctemplate/TemplateInfo.plist
vendored
Normal 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>
|
177
pkg/Templates/Apple IIgs/Control Panel in C.xctemplate/main.c
vendored
Normal file
177
pkg/Templates/Apple IIgs/Control Panel in C.xctemplate/main.c
vendored
Normal 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;
|
||||||
|
}
|
19
pkg/Templates/Apple IIgs/Control Panel in C.xctemplate/main.h
vendored
Normal file
19
pkg/Templates/Apple IIgs/Control Panel in C.xctemplate/main.h
vendored
Normal 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_____) */
|
130
pkg/Templates/Apple IIgs/Control Panel in C.xctemplate/main.rez
vendored
Normal file
130
pkg/Templates/Apple IIgs/Control Panel in C.xctemplate/main.rez
vendored
Normal 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."
|
||||||
|
};
|
||||||
|
|
Loading…
Reference in New Issue
Block a user