home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Fish 3
/
goldfish_volume_3.bin
/
files
/
text
/
edit
/
macro
/
scanner
/
sdefines.c
< prev
next >
Wrap
C/C++ Source or Header
|
1994-09-28
|
1KB
|
58 lines
/*
** ***********************************************************************
**
** ScanHandlerSDefine (c) by Stefan Schor
**
** ***********************************************************************
*/
#include <exec/types.h>
#define UPPER(a) ((a) & 95)
__asm
ULONG
ScanHandlerSDefine(register __d0 ULONG len, register __a0 char **text)
{
const char *version = "$VER: SDefine 1.0 (24.3.94)";
if (len > 9)
{
char *pos = *text;
int i=0;
if ( pos[i++] == '#'
&& UPPER(pos[i++]) == 'D'
&& UPPER(pos[i++]) == 'E'
&& UPPER(pos[i++]) == 'F'
&& UPPER(pos[i++]) == 'I'
&& UPPER(pos[i++]) == 'N'
&& UPPER(pos[i++]) == 'E'
&& pos[i++] == ' ' )
{
/* Der Text `#define ' ist schon einmal da ! */
for (len -= i; len && pos[i]==' '; i++, len-- ); /* Alle Spaces übersehen */
*text = &pos[i]; /* Hier beginnt der Text */
while (len && pos[i]!=' ' && pos[i]!='(')
{
i++;
len--; /* Solange Wort geht */
}
return ((ULONG)&pos[i] - (ULONG)*text); /* Länge zurück */
}
}
return 0;
}