📄 start.c
字号:
/*
--- HISTORY ---
03/28/95 ES Changing int to unsigned int in Init().
09/04/96 FR Specific startup for CORALINE application.
*/
#include "lustart.h"
#pragma DATA_SEG SHORT _ZEROPAGE
extern int _SEX;
#pragma DATA_SEG _STARTUP
_startupDesc _startupData;
static void Init (void)
/**** Zero out global variables */
{
_RangePtr p = _startupData.pZeroOut;
unsigned int n, nofZeroOuts = _startupData.nofZeroOuts; /* << ES 03/28/95 */
char *q;
while (nofZeroOuts) {
n = p->size;
q = p->beg;
while (n--) {
*q = '\0';
q++;
}
p++;
nofZeroOuts--;
} /* end while */;
} /* end Init */
static void Copy (void)
/**** Copy global initialization data */
{
_CopyPtr p = _startupData.toCopyDownBeg;
int m, n = p->size;
char *q, *far r;
while (n) {
q = p->destination;
r = (char * far) (p + 1);
m = n;
do {
*q = *r;
q++; r++;
} while (--n);
p = (_CopyPtr) r;
n = p->size;
} /* end while */;
} /* end Copy */
void _Startup (void)
/**** Entry point of application */
{
for (;;) {
asm {
; Initialize stack?
/* << ES 12/25/94: we must always initialize SP
LD A, _startupData.flags:1
JREQ InitStuff
*/
RSP
InitStuff:
} /* end asm */;
Init ();
Copy ();
_startupData.main();
} /* end for */;
} /* end _Startup */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -